Java没有编译我的源代码
我无法在命令行中编译我的类。我肯定错过了一些很明显的东西,但我想不出来 这里是我的设置 环境设置(Win 8.1): 我有一个“javaTest”文件夹,其中包含两个java文件Run.java和Animal.java。 我可以编译Animal.java,但编译“Run.java”文件时出错 命令行:Java没有编译我的源代码,java,eclipse,compilation,Java,Eclipse,Compilation,我无法在命令行中编译我的类。我肯定错过了一些很明显的东西,但我想不出来 这里是我的设置 环境设置(Win 8.1): 我有一个“javaTest”文件夹,其中包含两个java文件Run.java和Animal.java。 我可以编译Animal.java,但编译“Run.java”文件时出错 命令行: C:\>cd C:\javaTest C:\javaTest>dir Volume in drive C is Local Disk Directory of C:\javaTe
C:\>cd C:\javaTest
C:\javaTest>dir
Volume in drive C is Local Disk
Directory of C:\javaTest
01/10/2014 10:37 AM <DIR> .
01/10/2014 10:37 AM <DIR> ..
01/10/2014 10:37 AM 337 Animal.java
01/10/2014 10:36 AM 230 Run.java
2 File(s) 567 bytes
2 Dir(s) 42,796,736,512 bytes free
C:\javaTest>javac Animal.java (**note: this gets executed without problems**)
C:\javaTest>javac Run.java
Run.java:5: error: cannot find symbol
Animal a1 = new Animal();
^
symbol: class Animal
location: class Run
Run.java:5: error: cannot find symbol
Animal a1 = new Animal();
^
symbol: class Animal
location: class Run
Run.java:9: error: cannot find symbol
Animal a2 = new Animal("Animal2");
^
symbol: class Animal
location: class Run
Run.java:9: error: cannot find symbol
Animal a2 = new Animal("Animal2");
^
symbol: class Animal
location: class Run
4 errors
Animal.java
public class Animal{
private String name;
public Animal() {
}
public Animal(String name) {
this.name = name;
}
public void setName(String name){
this.name = name;
}
public String getName(){
return this.name;
}
public void showName(){
System.out.println(this.name);
}
}
我可以从Eclipse运行完全相同的代码,而不会出现任何问题。因此,我不确定我缺少了什么…您必须将实际文件夹添加到类路径:
javac -cp .\;%CLASSPATH% Animal.java
您必须将实际文件夹添加到类路径:
javac -cp .\;%CLASSPATH% Animal.java
奇怪的是,这是必要的。你有一个CLASSPATH环境变量吗?默认情况下,如果没有指定类路径,java/javac应该使用当前工作目录(“.”)作为类路径。如果您有一个CLASSPATH环境变量,那么删除它可能会使学习者的生活更轻松。我确实在我的环境变量中设置了指向多个位置的CLASSPATH。然而,我的类路径没有包含“.”,我认为这是问题所在。这真的是我唯一改变的东西,我可以在以后编译。奇怪的是,这是需要的。你有一个CLASSPATH环境变量吗?默认情况下,如果没有指定类路径,java/javac应该使用当前工作目录(“.”)作为类路径。如果您有一个CLASSPATH环境变量,那么删除它可能会使学习者的生活更轻松。我确实在我的环境变量中设置了指向多个位置的CLASSPATH。然而,我的类路径没有包含“.”,我认为这是问题所在。这真的是我唯一改变的东西,我可以在以后编译。
javac -cp .\;%CLASSPATH% Animal.java