我的Java bin已添加到路径中,但仍然无法找到我认为的javac。
在eclipse IDE中可以正常工作。
public class testing {
public static void main(String[] args) {
System.out.println("hi");
}
}
以下是来自sublime文本的错误2.删除了一些英特尔路径,否则路径太长了。
[Error 2] The system cannot find the file specified
[cmd: [u'javac', u'C:\\Users\.......\testing.Java']]
[dir: C:\Users.....
[path: C:\ProgramData\Oracle\Java\javapath;C:\Python27\;C:\Python27\Scripts;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Java\jre1.8.0_45\bin;]
[Finished]
如果我在Sublime文本3中运行它,则错误如下。
'javac' is not recognized as an internal or external command,
operable program or batch file.
[Finished in 0.0s with exit code 1]
我甚至尝试过自定义构建,但显示的错误是相同的,下面是自定义构建。
MyJava.sublime-构建
{
"cmd": ["javac", "$file_name", "&&", "java" ,"$file_base_name"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"path" : "C:\\Program Files\\Java\\jre1.8.0_45\\bin",
"selector": "source.java",
"shell":true
}
请帮忙,因为我没有使用Sublime文本并继续使用Eclipse,但我想让我再试一次。
下面是我的Java文件夹。正如所建议的那样,我将jdk添加到路径中。
但现在错误更改为以下。
javac: invalid flag: C:\........GitHub\HackerRank\testing.Java
Usage: javac <options> <source files>
use -help for a list of possible options
[Finished in 0.3s with exit code 2]
答案 0 :(得分:2)
您的路径具有jre(Java运行时环境)bin目录,但没有jdk(Java Development Kit),这是通常找到javac的地方。您需要找到JDK所在的位置,并将该目录添加到您的路径中。
答案 1 :(得分:1)
首先,不要跳过有关如何构建和运行程序的详细信息。在eclipse中,默认情况下我甚至不知道path / javac / java等。
以下是What does "Could not find or load main class" mean?
的一些重要细节j
而不是J
。 (test.java)javac test.java
用于编译导致test.class
编译程序的程序。java test
来运行您的计划java test.class
jdk
而不是jre
ctrl+b
将只编译程序而不运行它。Myjava.sublime-构建
{
"cmd": ["javac", "$file_name", "&&", "java" ,"$file_base_name"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"path" : "C:\\Program Files\\Java\\jdk1.7.0_79\\bin",
"selector": "source.java",
"shell":true
}
这将同时编译和运行程序。