提问者:小点点

我如何阻止Maven每次下载神器?


我使用的是 Maven 3.1.1。在我的一个项目中,我引用了我的另一个项目......

    <dependencies>
            <dependency>
                    <groupId>org.mainco.subco</groupId>
                    <artifactId>myprojectA</artifactId>
                    <version>${project.version}</version>
            </dependency>

以上依赖于我的其他几个项目。但是,当我运行“mvn 全新安装”时,Maven 会尝试下载这些项目,而不仅仅是使用本地存储库中的内容。如何让 Maven 仅在我的本地存储库中不存在内容时才下载这些内容?这是我所看到的输出...

davea$ mvn clean install
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building subco admin Module 57.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
Downloading: http://download.java.net/maven/2/org/mainco/subco/myprojectA/57.0.0-SNAPSHOT/maven-metadata.xml
Downloading: http://download.java.net/maven/2/org/mainco/subco/subco/57.0.0-SNAPSHOT/maven-metadata.xml
Downloading: http://download.java.net/maven/2/org/mainco/subco/projectB/57.0.0-SNAPSHOT/maven-metadata.xml
Downloading: http://download.java.net/maven/2/org/mainco/subco/projectC/57.0.0-SNAPSHOT/maven-metadata.xml
[INFO]

共3个答案

匿名用户

如果您使用脱机标志,它将使用本地存储库中的库。

mvn clean install -o 

匿名用户

您可以通过在 $USER_HOME/.m2/设置.xml文件中配置存储库来控制更新频率。具体来说,将更新策略更改为导致更新频率较低的值。

这个Stackoverflow答案有更多细节。

匿名用户

如果您想更新一些jar,但不想更新本地安装的jar的快照,那么您应该使用< code >-nsu (< code >-no-snapshot-updates )标志来防止Maven从主存储库中获取最新的快照。使用< code>-o将阻止它从远程存储库中获取其他升级和(通常)基本的maven jars。