将我的 Mac 更新到最新的 Java JDK 时遇到困难



[2015-10-12 12:51]

运行。。。

little-mbook1:platform mlittle$ ant clean all
     Error: JAVA_HOME is not defined correctly.
       We cannot execute   /Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home//bin/java

和跑步...

mlittle-mbook1:bin mlittle$ export   JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home

我将java_home设置为: JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Content/Home

我刚刚注意到Apache Ant正在寻找错误的路径,并增加了一个"/">

并根据您的电子邮件

" Ant 将尝试使用文件 $JAVA_HOME/bin/java。如果这不存在,那么> JAVA_HOME不正确,就是这么简单。例如,如果你的java可执行文件>位于/path/to/whatever/bin/java,那么JAVA_HOME应该是/path/to/whatever。

或。。。 $JAVA_HOME/bin/java

但错误消息指示它正在查找路径。.

$JAVA_HOME//bin/java
注意"//">

而不是"/":如何纠正?

或者是否有一个"蚂蚁"命令,我可以在其中强制它查看正确的路径?

====

=============

[2015-10-12:1204]

谢谢,您为我解决了一个问题,我知道/java 是路径 $java_home/bin/java 中的可执行文件,而不是文件夹 至于 $JAVA_HOME/bin/java -version, 我得到了以下内容...

mlittle-mbook1:~ mlittle$ /usr/libexec/java_home -v
java_home: option requires an argument -- v
/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
mlittle-mbook1:~ mlittle$ which java
/usr/bin/java

现在重新运行 ant 以尝试构建 hybris 实例...

mlittle-mbook1:~ mlittle$ cd 00hybris/hybris/bin/platform
mlittle-mbook1:platform mlittle$ pwd
/Users/mlittle/00hybris/hybris/bin/platform
mlittle-mbook1:platform mlittle$ . ./setantenv.sh
mlittle-mbook1:platform mlittle$ ant clean all
Error: JAVA_HOME is not defined correctly.
We cannot execute   /Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home//bin/java

如您所见,尽管现在看起来正确的 $java_home 位置,但我仍然遇到"蚂蚁"问题。

===

====

===

====

[2015-10-11-23:20]进一步调查

mlittle-mbook1:Users mlittle$ cd   
/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
mlittle-mbook1:Home mlittle$ pwd
/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
mlittle-mbook1:Home mlittle$ ls -a
.                   README.html             db                  lib
..                  THIRDPARTYLICENSEREADME-JAVAFX.txt  include         man
COPYRIGHT               THIRDPARTYLICENSEREADME.txt     javafx-src.zip release
LICENSE                 bin                 jre                 src.zip
mlittle-mbook1:Home mlittle$ cd bin
mlittle-mbook1:bin mlittle$ ls -a
.       jar     javafxpackager  jconsole    jjs     jsadebugd   keytool rmic servertool xjc
 ..     jarsigner   javah       jdb     jmap        jstack      native2ascii    rmid        tnameserv
appletviewer    java        javap       jdeps       jmc     jstat       orbd        rmiregistry unpack200
extcheck    javac       javapackager    jhat        jps     jstatd      pack200     schemagen   wsgen
idlj        javadoc     jcmd        jinfo       jrunscript  jvisualvm   policytool  serialver   wsimport
mlittle-mbook1:bin mlittle$ which java
/usr/bin/java
mlittle-mbook1:bin mlittle$ export    JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home
mlittle-mbook1:bin mlittle$ java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)
mlittle-mbook1:bin mlittle$ 

====

 mlittle-mbook1:platform mlittle$ ant clean all
 Error: JAVA_HOME is not defined correctly.
   We cannot execute   /Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home//bin/java
mlittle-mbook1:platform mlittle$* 

==初步调查

我在MacBook上的Java安装似乎有问题,因为这与安装基于java的电子商务平台有关[hybris 5.6.02安装脚本的困难]和使用Apache Ant...

  1. 关于我的MacBook..系统软件概述:

系统版本: OS X 10.10.5 (14F27(
内核版本:达尔文 14.5.0
启动卷: 麦金塔高清
启动模式:正常
计算机名称: mlittle-mbook1
用户名: mlittle-mbook1 (mlittle(
安全虚拟内存:已启用
启动时间:1 天5:34

=======

==

1.检查了哪个Java...

mlittle-mbook1:~ mlittle$ which java
/usr/bin/java

阿拉伯数字。重新检查哪个Java..

u2028

mlittle-mbook1:~ mlittle$ ls -l `which java`
lrwxr-xr-x  1 root  wheel  74  5 Nov  2014 /usr/bin/java -> /System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java

u20283.然后我下载了JDK版本8,更新60,等等:

/library/java

/java?JavaVirtualMachines

以前它有..

/jdk1.7.0_21.jdk

现在它有

/jdk1.7.0_21.jdk
/jdk1.8.0_60.jdk

这很令人困惑,我以为它会替换/jdk1.7.0_21.jdk 使用/jdk1.8.0_60.jdk

4.我检查了java的版本。

mlittle-mbook1:~ mlittle$ java -version
java version "1.7.0_21"
mlittle-mbook1:~ mlittle$ java -version
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b12)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)

它仍然指示java版本"1.7.0_21???

所以我将/jdk1.7.0_21.jdk 重命名为/old-jdk1.7.0_21.jdk

4.我再次检查java的版本,然后我得到了...

mlittle-mbook1:~ mlittle$ java -version
java version "1.8.0_60"
Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode)

5. 通过设置 ANT 环境变量,哪个应该是 Hybris5.6.0.2 的正确 Java 版本[这是我正在尝试安装的基于 Java 的电子商务平台],并开始构建过程 [ant 清理所有]...但。。。

mlittle-mbook1:platform mlittle$ . ./setantenv.sh

u2028试图蚂蚁清理所有..并收到与JAVA_HOME
相关的错误消息u2028

mlittle-mbook1:platform mlittle$ ant clean all
Error: JAVA_HOME is not defined correctly.
  We cannot execute /Library/Java/JavaVirtualMachines/jdk1.7.0_21.jdk/Contents/Home//bin/java

u2028u20286.再次检查了java路径...

mlittle-mbook1:platform mlittle$ which java
/usr/bin/java

u2028

7.我尝试更改Java_home路径,然后重新运行 ANT。

mlittle-mbook1:platform mlittle$ export JAVA_HOME=/Library/Java/Home
mlittle-mbook1:platform mlittle$ ant clean all
Error: JAVA_HOME is not defined correctly.
  We cannot execute /Library/Java/Home/bin/java

u2028u20288.再次选中"哪个Java">

mlittle-mbook1:platform mlittle$ which java
/usr/bin/java
mlittle-mbook1:platform mlittle$ $JAVA_HOME/bin/java -version
-bash: /Library/Java/Home/bin/java: No such file or directory

u20289.我尝试更改Java_home,重新运行Ant,但仍然收到错误消息。

mlittle-mbook1:platform mlittle$ export JAVA_HOME=/Library/Java/JavaVirtualMachines/
mlittle-mbook1:platform mlittle$ ant clean all
Error: JAVA_HOME is not defined correctly.
  We cannot execute /Library/Java/JavaVirtualMachines//bin/java

10. 9.我尝试更改Java_home,重新运行Ant,但仍然收到错误消息。

mlittle-mbook1:platform mlittle$ export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/bin
mlittle-mbook1:platform mlittle$ ant clean all
Error: JAVA_HOME is not defined correctly.
  We cannot execute /Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home/bin/bin/java

u202811.再次检查了哪个java

mlittle-mbook1:platform mlittle$ which java
/usr/bin/java

我很困惑,显然我没有正确设置我的 java 设置主变量:有什么建议吗?

看起来这应该是正确的:

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_60.jdk/Contents/Home

Ant 将尝试使用文件$JAVA_HOME/bin/java 。如果这不存在,那么JAVA_HOME不正确,就是这么简单。例如,如果您的java可执行文件位于 /path/to/whatever/bin/java ,则JAVA_HOME应该是/path/to/whatever

相关内容

  • 没有找到相关文章

最新更新