如何将工件从公共存储库(例如,Maven Central)缓存到私有的nexus存储库?

时间:2015-05-06 04:56:16

标签: eclipse maven nexus

基本上,我问与链接here相关的问题。

但是,我不认为挑选的答案解决了这个问题。另外,几年前曾问过前者。

我安装的Nexus OSS版本是2.11.2-06(最新版本)。

如果我使用nexus GUI搜索并单击下载按钮,我可以缓存工件。 the Nexus GUI

但是,如果我在eclipse中的pom文件中声明它,则不会缓存工件。它只是从MAVEN CENTRAL获取它并在本地缓存它在我的计算机中而不是在Nexus存储库中。

我希望在eclipse中声明POM文件中的依赖项时,如果它没有在本地缓存,maven将从MAVEN CENTRAL获取它,并在本地缓存它在我的计算机和Nexus存储库中。

我的maven settings.xml如下所示:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
<profiles>
    <profile>
        <id>kingstar-internal</id>
        <repositories>
            <repository>
                <id>kingstar-internal-repository</id>
                <name>Kingstar Internal Repository</name>
                <url>http://localhost:8081/nexus/content/repositories/KingstarRepository</url>
            </repository>
            <repository>
                <id>kingstar-snapshot-repository</id>
                <name>Kingstar Snapshot Repository</name>
                <url>http://localhost:8081/nexus/content/repositories/KingstarSnapshotRepository</url>
                <snapshots>
                    <enabled>true</enabled>
                </snapshots>
            </repository>
        </repositories>
    </profile>
</profiles>

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

<activeProfiles>
    <activeProfile>kingstar-internal</activeProfile>
</activeProfiles>

<servers>
    <server>
        <id>kingstar-internal-repository</id>
        <username>deployment</username>
        <password>deployment</password>
    </server>
    <server>
        <id>kingstar-snapshot-repository</id>
        <username>deployment</username>
        <password>deployment</password>
    </server>
</servers>
</settings>

感谢任何帮助!

0 个答案:

没有答案