如何防止maven检查外国存储库?

Jus*_*tin 6 maven-2

当我使用maven构建时,我看到它检查所有类型的外部存储库,以查找只有我的本地构建应该生成的工件.我怎么能告诉它com.myorg组只能在本地存储库中找到?基本上我想做m2eclipse在工作区分辨率上做的事情,但是在命令行上.

[INFO] snapshot com.myorg:core:0.0.1-SNAPSHOT: checking for updates from sun-jms
[INFO] snapshot com.myorg:core:0.0.1-SNAPSHOT: checking for updates from hibernate
[INFO] snapshot com.myorg:util:0.0.1-SNAPSHOT: checking for updates from sun-jms
[INFO] snapshot com.myorg:util:0.0.1-SNAPSHOT: checking for updates from hibernate
...
Run Code Online (Sandbox Code Playgroud)

背景: 我有一个分层的maven项目(一个级别).我想做一个完整的构建,所以我去顶部做mvn clean install.

  • com.myorg(父母)
    • 的pom.xml
    • com.myorg.core
      • 的pom.xml
    • com.myorg.util
      • 的pom.xml

Viv*_*sse 9

您可以尝试将"-o"选项传递给Maven.-o激活"脱机模式",其中Maven不查询远程存储库以检查更新或新工件.

我不认为你可以基于每个依赖指定这个.


Pas*_*ent 7

如果您使用的远程存储库是发布存储库并且实际上不包含任何SNAPSHOT,则可以为它们禁用SNAPSHOT,并且Maven不会检查它们是否有SNAPSHOT更新.例如:

<repositories>
  <repository>
    <id>java.net</id>
    <url>http://download.java.net/maven/2</url>
    <snapshots>
      <enabled>false</enabled>
    </snapshots>
  </repository>
  ...
</repositories> 
Run Code Online (Sandbox Code Playgroud)