maven repository 配置

eclipse maven 配置修改:

maven repository 配置

maven repository 配置

http://blog.csdn.net/joewolf/article/details/4876604

Maven缺省的本地仓库地址为${user.home}/.m2/repository 。也就是说,一个用户会对应的拥有一个本地仓库。

你也可以自定义本地仓库的位置,修改${user.home}/.m2/settings.xml :

了解了本地仓库,接着了解一下Maven缺省的远程仓库,即Maven*仓库

在POM中配置远程仓库

  1. <project>
  2. ...
  3. <repositories>
  4. <repository>
  5. <id>maven-net-cn</id>
  6. <name>Maven China Mirror</name>
  7. <url>http://maven.net.cn/content/groups/public/</url>
  8. <releases>
  9. <enabled>true</enabled>
  10. </releases>
  11. <snapshots>
  12. <enabled>false</enabled>
  13. </snapshots>
  14. </repository>
  15. </repositories>
  16. <pluginRepositories>
  17. <pluginRepository>
  18. <id>maven-net-cn</id>
  19. <name>Maven China Mirror</name>
  20. <url>http://maven.net.cn/content/groups/public/</url>
  21. <releases>
  22. <enabled>true</enabled>
  23. </releases>
  24. <snapshots>
  25. <enabled>false</enabled>
  26. </snapshots>
  27. </pluginRepository>
  28. </pluginRepositories>
  29. ...
  30. </project>

我们先看一下<repositories>的配置,你可以在它下面添加多个<repository> ,每个<repository>都有它唯一的ID,一个描述性的name,以及最重要的,远程仓库的url。此外,<releases><enabled>true</enabled></releases>告诉Maven可以从这个仓库下载releases版本的构件,而<snapshots><enabled>false</enabled></snapshots>告诉Maven不要从这个仓库下载snapshot版本的构件。禁止从公共仓库下载snapshot构件是推荐的做法,因为这些构件不稳定,且不受你控制,你应该避免使用。当然,如果你想使用局域网内组织内部的仓库,你可以激活snapshot的支持。

关于<repositories>的更详细的配置及相关解释,请参考:http://www.sonatype.com/books/maven-book/reference_zh/apas02s08.html。

至于<pluginRepositories>,这是配置Maven从什么地方下载插件构件(Maven的所有实际行为都由其插件完成)。该元素的内部配置和<repository>完全一样,不再解释。

在settings.xml中配置远程仓库

  1. <settings>
  2. ...
  3. <profiles>
  4. <profile>
  5. <id>dev</id>
  6. <!-- repositories and pluginRepositories here-->   把上面的内容粘贴到这里。。。
  7. </profile>
  8. </profiles>
  9. <activeProfiles>
  10. <activeProfile>dev</activeProfile>
  11. </activeProfiles>
  12. ...
  13. </settings>

这里我们定义一个id为dev的profile,将所有repositories以及pluginRepositories元素放到这个profile中,然后,使用<activeProfiles>元素自动激活该profile。这样,你就不用再为每个POM重复配置仓库。

使用profile为settings.xml添加仓库提供了一种用户全局范围的仓库配置。

上一篇:Maven - Repository(存储库)


下一篇:js异步梳理:1.从浏览器的多进程到JS的单线程,理解JS运行机制