我转到控制面板中“系统”中的“环境变量”,并建立了两个新变量,一个用于用户变量,另外一个用于系统变量。 二者都被命名为JAVA_HOME而且都指向 java
C:\\ Sun \\ SDK \\ jdk \\ bin eclipse
可是因为某种缘由,运行Java命令时仍然出现如下错误... jvm
BUILD FAILED C:\Users\Derek\Desktop\eclipse\eclipse\glassfish\setup.xml:161: The following error occurred while executing this line: C:\Users\Derek\Desktop\eclipse\eclipse\glassfish\setup.xml:141: The following error occurred while executing this line: C:\Users\Derek\Desktop\eclipse\eclipse\glassfish\setup.xml:137: Please set java.home to a JDK installation Total time: 1 second C:\Users\Derek\Desktop\eclipse\eclipse\glassfish>lib\ant\bin\ant -f setup.xml Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\lib\tools.jar Buildfile: setup.xml
我该如何解决这个问题? 工具
这是从www.java.com- 这里设置Java环境的官方解决方案 。 开发工具
有适用于Windows 7,Windows Vista,Windows XP,Linux / Solaris和其余Shell的解决方案。 ui
Windows 7的
- 从开始菜单中选择计算机
- 从上下文菜单中选择“系统属性”
- 单击高级系统设置->高级选项卡
- 单击环境变量,在系统变量下,找到PATH,而后单击它。
- 在“编辑”窗口中,经过将类的位置添加到PATH的值来修改PATH。 若是没有PATH项,则能够选择添加一个新变量,并将PATH做为名称添加,将类的位置做为值添加。
- 从新打开命令提示符窗口,而后运行Java代码。
在将Java目录添加到PATH
变量时,您可能但愿将其放在其开头。 我遇到的问题是,将Java目录放在PATH
的末尾将不起做用。 检查后,我在Windows\\System32
目录中找到了java.exe
,当PATH
有多个同名文件时,它看起来像第一个。 this
您必须首先在系统中安装JDK 。 spa
设置Java主页 操作系统
JAVA_HOME = C:\\ Program Files \\ Java \\ jdk1.7.0 [JDK安装目录的位置] code
有了JDK安装路径后:
在系统变量下设置JAVA路径
路径 = C:\\ Program Files \\ Java \\ jdk1.7.0; [使用分号附加值]
对于仍然为这个问题感到困惑的人(我尝试了上述全部建议)-
若是您使用的是64位版本的Windows,而且已经安装了32位JDK,则除了调整PATH
变量外,您可能还须要调整注册表变量。
我一直在努力,正确地设置了PATH
变量-仍然无济于事-而后只在注册表中找到“腾出的” Java条目,这彷佛是修复“错误的” Java Runtime Environment的死路。
经过使用Process Monitor
我尝试开始的程序,以嗅探它在Java注册表中的位置(运行时环境),我胜利地发现它正在查找32位版本的注册表项,在HKEY_LOCAL_MACHINE\\SOFTWARE\\**Wow6432Node**\\JavaSoft\\Java Runtime Environment
。
在该键中,您应该找到已安装的不一样Java版本(过去和/或如今)的子项。 单击最新版本的子项(例如,个人子项当前为1.7.0_25)。 单击该子项以后,您将在右侧看到注册表字符串值,尤为是JavaHome
和RuntimeLib
。 您须要修改这两个值的值以分别反映当前文件夹和jvm.dll文件。
例如,在个人状况下,这些值(之前)分别设置为C:\\Program Files (x86)\\Java\\jre7
和C:\\Program Files (x86)\\Java\\jre7\\bin\\client\\jvm.dll
在个人机器上不存在。 我必须将它们更新到C:\\Program Files (x86)\\Java\\jdk1.7.0_25\\jre
和C:\\Program Files (x86)\\Java\\jdk1.7.0_25\\jre\\bin\\client\\jvm.dll
的当前文件夹和文件C:\\Program Files (x86)\\Java\\jdk1.7.0_25\\jre\\bin\\client\\jvm.dll
。
一样,这将彻底取决于您安装的Java版本(JDK和/或JRE)(32或64位),以及所使用的操做系统类型(32或64位)。 只需知道它们会反映在注册表中的不一样位置便可(例如用于32位应用程序的Wow6432Node
,在个人状况下,是在64位计算机上安装了32位JDK)。
如今,我已经更新了这两个注册表值,个人程序能够完美运行,而不会再因缺乏Java Runtime Environment(源自注册表)而出现打h或抱怨。
通过围绕此处大多数解决方案工做了数小时以后,仅经过安装32位JDK就为我解决了该问题。