本地主机上的 Sonatype Nexus 服务器不缓存工件

Sonatype Nexus server on localhost doesn't cache artifacts

我已经在我的 64 位本地主机上安装了 nexus-2.11 Windows。我通过 ant-tasks 在 Eclipse 中 运行 mvn build.xml 中。我已将.m2/settings.xml中的nexus服务器设置为主镜像:

<mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <url>http://localhost:8081/nexus/content/groups/public/</url>
</mirror>

当运行 mvn 命令时,依赖关系被解析,并且在日志中显示它们正在从 Nexus 服务器下载。问题在于 Nexus 缓存:Nexus 不缓存任何内容。我的意思是 sonatype-work 文件夹是空的,所有工件都在 .m2.

登录管理面板,我可以看到工件的完整索引,但里面没有 jar 文件或元数据 sonatype-work。 (下载所有工件后,出于安全原因,我想将 sonatype-work 的内容放到离线的主服务器中。)

可能是什么原因造成的?

您是否在 settings.xmlprofiles 部分插入了类似的内容?

    <profile>
        <id>company-nexus</id>
        <repositories>
            <repository>
                <id>central</id>
                <url>http://central</url>  <!-- use a not existing URL!! -->
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
        <pluginRepositories>
            <pluginRepository>
                <id>central</id>
                <url>http://central</url>
                <releases>
                    <enabled>true</enabled>
                </releases>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </pluginRepository>
        </pluginRepositories>
    </profile>

这会导致 Maven 查看 mirror 定义。

根据sonatype-work/README.txt,我将环境变量PLEXUS_NEXUS_WORK设置为sonatype-work的路径,然后,Nexus开始缓存到工作文件夹中。

The location of the individual work folders may be overridden using environment variables. For example, the Nexus work location can be defined with PLEXUS_NEXUS_WORK. If it is not defined, then this default is used.