Maven 2 如何防止maven检查外部存储库?

Maven 2 如何防止maven检查外部存储库?,maven-2,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: check

当我使用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
...
背景: 我有一个分层的maven项目(一级)。我想做一个完整的构建,所以我转到顶部,进行
mvn清理安装

  • com.myorg(家长)
    • pom.xml
    • com.myorg.core
      • pom.xml
    • com.myorg.util
      • pom.xml

您可以尝试将“-o”选项传递给Maven-o激活“脱机模式”,在此模式下,Maven不会查询远程存储库以检查更新或新工件


我不认为您可以在每个依赖项的基础上指定它。

如果您使用的远程存储库是发布存储库,并且实际上不包含任何快照,那么您可以为它们禁用快照,Maven不会检查它们的快照更新。例如:

<repositories>
  <repository>
    <id>java.net</id>
    <url>http://download.java.net/maven/2</url>
    <snapshots>
      <enabled>false</enabled>
    </snapshots>
  </repository>
  ...
</repositories> 

java.net
http://download.java.net/maven/2
假的
...

默认情况下,maven首先检查本地存储库中的依赖项,然后检查外部存储库中的依赖项。唯一让maven检查外部存储库的情况是使用快照

如果使用快照,则可以在检查外部存储库时使用
标记进行更改

如果要在脱机模式下工作,可以使用“-o”选项在mvn命令上设置临时脱机选项,也可以使用
true
在“~/.m2/settings.xml”中设置它


执行此操作之前,请记住在真正激活脱机模式之前,使用
dependecy:go offline
mojo下载一次依赖项


资源:


  • 纯粹的天才;我本以为这是存储库控制的属性,而不是每个用户。