在对应用程序进行任何更改之前,我运行网络服务器时会遵循播放教程。服务器抛出错误:
IOException: Cannot run program "javac": CreateProcess error=2, The system cannot find the file specified
我检查我的 JAVA_HOME,它显示为 C:\Program Files\Java\jdk1.7.0_25。如何解决这个问题?
确保
javac
位于操作系统的搜索路径中
例如,在 Windows 上,转到
Control Panel
-> System
,单击 Advanced System Settings
,单击 Environment Variables
。
在
System variables
中,找到名为 path
的变量,并在 C:\Program Files\Java\jdk1.7.0_25\bin
的开头插入
value
。 不要忘记在值之间添加 ;
;)
单击
Okay
、Okay
。
关闭所有打开的命令提示符窗口,然后重新打开它们。 这将确保它们使用新的环境变量进行更新。
我不知道典型的java安装没有有
javac
。因此,我做了以下事情:
1) 访问了 Java SE 开发工具包网站
2) 下载适合我的操作系统的版本并安装它
3) 转到新 Java SE 开发工具包的根文件夹(在本例中为
C:\Program Files (x86)\Java\jdk1.8.0_31\bin
)
4) 使用 Windows 搜索,输入
environment variables
,这会在 Windows 7 上显示选项 Edit the system environment variables
5) 单击应已打开的“系统属性”选项卡中的
Environment Variables
。
6) 突出显示
PATH
,单击 Edit...
7) 添加了
;
(用分号将新路径与旧路径分开)+ C:\Program Files (x86)\Java\jdk1.8.0_31\bin
(确保分号和新路径之间没有空格。
不要忘记检查您的系统访问权限。在安装或设置过程中您应该拥有所有访问权限。我只需要要求完整的操作系统访问权限(Windows,在大公司)来解决这个问题,现在一切都OK了。
即使您的
PATH
环境变量中可能有 JDK bin 目录,也可能会出现此问题。要修复此问题,请将 JDK bin 目录(而不是 JRE 目录)的路径放在 PATH 变量的开头,以防万一 javac
在错误的目录中被拾取,因为错误的目录恰好是第一个。