(Sublime Text 3) bash: javac: 找不到命令

(Sublime Text 3) bash: javac: command not found

我正在尝试在 Sublime Text 3 上为 Java 获取一个可用的构建系统,但是每当我尝试 运行 任何东西时,我只会得到 bash:javac: 找不到命令。

最奇怪的是我可以从终端运行 javac 命令,因为我添加了行

export JAVA_HOME=/usr/lib/jvm/java-14-openjdk && export PATH=$JAVA_HOME/bin:$PATH

到我的主目录中的 .bashrc 文件。

所以我不知道为什么我可以从终端使用 javac 和 java 运行 Java 文件,但是 Sublime Text 不能。

这是我的构建系统:

{
   "shell_cmd": "javac \"$file_name\" && java \"$file_base_name\"",
   "file_regex": "^(...*?):([0-9]*):?([0-9]*)",
   "selector": "source.java",
}

我正在使用 Manjaro 20。

我看到你用的是 Manjaro,它是 Arch 的衍生产品;而不是设置 JAVA_HOME 变量,您应该使用 archlinux-java 来设置默认的 JDK 版本。 archlinux-javajava-runtime-common 包的一部分。


当出现错误时,Sublime 将打印您当前的路径变量 (example)。确保路径设置正确。

我在我的 Arch 机器上试过你的构建系统,它工作正常,我也试过设置 JAVA_HOME 变量,它仍然有效。

使用 Sublime Text 3 Build 3211

对于遇到相同问题的未来用户,我通过在我的构建系统中指定路径变量来解决它,方法是添加:

"path":"your/directory/here"

我将行添加到 .bashrc 的整个过程结果完全没有必要,因为这修复了它。