我有Windows和Linux的双启动系统。我有另一个分区,Windows和Linux都可以看到它。我想把我的本地存储库放在那里。我如何提供Linux和Windows都能理解的路径。 Windows将其视为d:/repository
驱动器,Linux将其视为/media/234242342/repository
。我应该如何在pom.xml
中配置它?
答案 0 :(得分:31)
根据Maven文档,每个操作系统都需要M2_HOME
。在$M2_HOME/conf/
内,您可以放置一个settings.xml
文件,然后您可以使用<localRepository/>
元素指定本地存储库的位置。
因此对于您的特定系统,在Windows中使用
<localRepository>d:\repository</localRepository>
并在Linux中
<localRepository>/media/234242342/repository</localRepository>
答案 1 :(得分:11)
你不是在POM中这样做,而是在你的~/.m2/settings.xml
中,这对Linux和Windows来说都是不同的,所以没问题。请参阅localRepository
元素:
<settings>
<localRepository>d:\repository</localRepository>
<!-- or -->
<localRepository>/media/234242342/repository</localRepository>
...
</settings>
答案 2 :(得分:3)
它位于/home/.m2目录中,该文件夹可能已隐藏。因此,您需要按Ctrl + H才能看到隐藏的文件夹。
答案 3 :(得分:0)
难道你不能将两个位置都定义为单独的存储库,让maven使用可用的存储库吗?
或符号链接/media/234242342/repository
到/repository
,并将此路径用于两个版本。
另外,看看maven profiles,它可能会有所帮助!
答案 4 :(得分:0)
答案 5 :(得分:0)
如果您使用的是CentOS版本7,则Maven本地存储库将为:
/root/.m2/repository/