添加此存储库条目是否pom.xml有意义?
...
<distributionManagement>
<repository>
<id>dev</id>
<name>Local repository</name>
<url>file://${user.home}/.m2/repository</url>
</repository>
...
Run Code Online (Sandbox Code Playgroud)
我一直以为默认情况下将默认包含本地仓库。
I am aware of the fact this won't build on Windows. I found the entry above in a pom.xml at my company.
这里有几个问题。不,这样做没有意义,但不是因为默认情况下包含它\xe2\x80\x94,它不是\xe2\x80\x94,而是因为这是非常错误的做法。
\n\n请记住,这<distributionManagement>配置了 Maven 将在何处部署和发布您的工件。通过这一点配置,Maven 会将工件发布到您的本地存储库中;这是有问题的:
简而言之,这就是安装和下载时使用的本地存储库与部署或发布时使用的远程存储库之间的区别。它们可能会被混淆,因为远程存储库很可能是基于文件的存储库(如本地存储库),但它们的语义确实不同。另请参阅Maven 文档:
\n\n\n\n\n本地存储库是指您自己安装上的副本,它是远程下载的缓存,并且还包含您尚未发布的临时构建工件。
\n\n远程存储库是指通过各种协议(例如
\nfile://和 )访问的任何其他类型的存储库http://。这些存储库可能是由第三方设置的真正的远程存储库,用于提供其工件以供下载[...]。其他“远程”存储库可能是在公司内的文件或 HTTP 服务器上设置的内部存储库,用于在开发团队之间共享私有工件并用于发布。
您应该完全删除该配置,mvn clean install如果您确实想将工件放入本地存储库,则可以使用该配置。
| 归档时间: |
|
| 查看次数: |
5090 次 |
| 最近记录: |