有没有办法告诉maven在哪里放置文物?

问题描述:

我在m2eclipse插件,windows命令行和我的cygwin命令行中都运行maven。有没有办法告诉maven在哪里放置文物?

Cygwin的bash shell的转储文物进入cygwin的/home/me/.m2目录

但m2eclipse的& Windows外壳程序(Vista系统)使用/Users/me/Documents/.m2

是否有可能告诉mvn命令使用一个*.m2目录?

谢谢

对于Cygwin的,创建一个名为〜/ .mavenrc文件,并把下面的文字inside:

MAVEN_OPTS="-Dmaven.repo.local=c:\documents and settings\user\.m2\repository" 
export MAVEN_OPTS 

或者,您可以创建/etc/.mavenrc下的文件

另一种选择是在.m2和windows之间创建NTFS junction和你的cygwin配置文件。

+0

只需将其设置在设置中,就不需要为此编辑MAVEN_OPTS(它旨在将值传递给jdk) – 2009-04-10 23:56:41

当然,有几种方法。最典型的是在你的settings.xml文件来指定这个:

<settings xmlns="http://maven.apache.org/POM/4.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
         http://maven.apache.org/xsd/settings-1.0.0.xsd"> 
    <localRepository>/my/secret/repository</localRepository> 
</settings> 

只需在设置中指定它即可。这里不需要cygwin英雄。