这个问题我以前在这个网站和整个网络上被问过很多次。我已经尝试了在所有这些答案中找到的所有提示和建议,但我仍然无法让事情运行。我希望JDK在我的Cygwin安装中运行(Cygwin安装在Windows 64位机器上)。我没有安装Linux JDK安装,而是安装了Windows安装,所以我认为问题不存在。
我在 Windows 上安装的 JDK 的位置是
C:Program Files (x86)Javajdk1.8.0_40
我已将以下行添加到我的.bash_profile文件中(仅此行,没有#符号或任何东西):
export JAVA_HOME="/cygdrive/C/Program Files(x86)/Java/jdk1.8.0_40/"
export PATH=$PATH:"/cygdrive/C/Program Files(x86)/Java/jdk1.8.0_40/bin"
然后我启动Cygwin并输入
source .bash_profile
javac -version
此时我收到消息
-bash: javac: command not found
我已经尝试了十几种代码变体(互联网上充满了部分矛盾的想法),但没有一个奏效。我应该像某些网站建议的那样开始在 .bashrc 文件中乱搞吗?有人知道我做错了什么吗?
将$JAVA_HOME/bin
添加到 PATH。
否则,不会自动识别javac
命令。
我想出了这个问题,当然之前有人把它发布在堆栈溢出上:导出带有Cygwin空格的JAVA_HOME。问题是即使用引号指定目录,Cygwin仍然绊倒了程序和文件之间的空间。