Maven with Cygwin - 错误:JAVA_HOME未正确定义

gsi*_*011 11 java cygwin maven

我正试图在cygwin上运行Maven.我已经在路径中添加了maven,我的Java主页看起来像这样:

$ echo $JAVA_HOME 
/cygdrive/c/Program Files/Java/jdk1.6.0
Run Code Online (Sandbox Code Playgroud)

然而,当我尝试跑步时mvn --version,我得到了这个:

Error: JAVA_HOME is not defined correctly.
  We cannot execute /cygdrive/c/Program Files/Java/jdk1.7.0_01/bin/java
Run Code Online (Sandbox Code Playgroud)

知道为什么它不起作用吗?Java -version工作正常,所以它不是java的问题.我也尝试过jdk1.6.0.

跑步which java给,

$ which java
/cygdrive/c/windows/system32/java
Run Code Online (Sandbox Code Playgroud)

java -version给,

$ java -version
java version "1.7.0_01"
Java(TM) SE Runtime Environment (build 1.7.0_01-b08)
Java HotSpot(TM) Client VM (build 21.1-b02, mixed mode, sharing)
Run Code Online (Sandbox Code Playgroud)

小智 17

我遇到了同样的问题并解决了这个问题:如果我运行mvn.bat而不是mvn,我没有遇到这个问题.

因此,由于Cygwin将运行mvn文件,我将此mvn文件替换为bat链接文件(ln -s mvn.bat mvn).这样,运行mvn将默默运行mvn.bat,它可以优雅地处理这些问题.


Tim*_*rez 10

任何人使用Cygwin和Maven,这正是你需要的......

在您的Cygwin bash提示符中:

mvn 或者 mvn(你喜欢的......)

附加以下内容:

mvn

保存并退出.然后运行:

mvn

现在您应该可以像在cmd提示符中一样使用'mvn'命令.


Ole*_*eev 0

设置JAVA_HOME/cygdrive/c/Progra~1/Java/jdk1.6.0可能会有所帮助。