我试图让自己脱离IDE - 作为程序员变得懒惰。在发布之前,我查看了这些网站并没有帮助:
Error compiling Java from command line Compiling java from the command line Javac "cannot find symbol" http://www.javaprogrammingforums.com/java-ides/16906-trouble-running-java-file-windows-command-prompt.html#post71916
我的源文件有以下路径:
d:\工作空间\的HelloWorld \ SRC \ COM \ dogzilla
该路径中有两个文件:Start.java ...
SOLVER
...和HelloWorld.java
package com.dogzilla;
public class Start{
public Start() {
}
private static final String S = "Hello World";
public static void main(String[] args) {
HelloWorld hw = new HelloWorld();
hw.printHelloWorld(S);
}
}
当我将目录更改为package com.dogzilla;
public class HelloWorld {
public HelloWorld() {
}
public void printHelloWorld(String s){
System.out.println(s);
}
}
并运行D:\workspace\HelloWorld\com\dogzilla\src\main\java
时,它出现错误:
javac Start.java
所以我读过你必须指定类路径,因为Start.java:14: error: cannot find symbol
HelloWorld hw = new HelloWorld();
^
symbol: class HelloWorld
location: class Start
Start.java:14: error: cannot find symbol
HelloWorld hw = new HelloWorld();
^
symbol: class HelloWorld
location: class Start
2 errors
行。
所以我将目录更改为package com.dogzilla;
并运行D:\workspace\HelloWorld
(有趣的是,tab键完成路径所以我知道命令提示符正好找到Start.java)它出错了:< / p>
javac -cp com\dogzilla\src\main\java\Start.java
如何编译和运行这个简单的程序? IDE会隐藏这一点,但我在学习它时遇到了问题。
答案 0 :(得分:1)
您要做的第一件事就是将java代码编译成类文件。 javac
命令用于此目的。
只要捕获所有必须编译的java文件,就可以从任何地方运行此命令。
这将有效:
[D:\workspace\HelloWorld\src]> javac com\dogzilla\*.java
这也有效:
[D:\workspace\HelloWorld\src\com\dogzilla] java Start.java HelloWorld.java
要运行已编译的代码,请使用java
命令。您必须使用主类的完全限定名称,因此您必须位于根源目录中才能执行此操作。
[D:\workspace\HelloWorld\src]> java com.dogzilla.Start