情况如下:
当前目录为./
有如此文件:
1. ./test.java:
import ABC.*;
public class test {
public static void main(String argv[]){
a b = new a();
b.f();
}
}
2: ./ABC/a.java:
package ABC;
public class a {
public void f(){
System.out.println("f");
}
}在./目录下运行命令:
javac test.java
javac -classpath ./ test.java均出现:
test.java:4:cannot access a
bad class file: ./a.class
class file contains wrong class: a.a
Please remove or make sure it appears in the correct subdirectory of the classpath.
a b = new a();
1 error
这样的错误在eclipseIDE下,
这样是没有错误的
所以我相信,是我的命令有问题。并且,假如把test.java 改成:
import ABC.a;
public class test {
public static void main(String argv[]){
a b = new a();
b.f();
}
}
则在命令行下也顺利通过编译
小弟不才,向各位请教到底是什么问题~
当前目录为./
有如此文件:
1. ./test.java:
import ABC.*;
public class test {
public static void main(String argv[]){
a b = new a();
b.f();
}
}
2: ./ABC/a.java:
package ABC;
public class a {
public void f(){
System.out.println("f");
}
}在./目录下运行命令:
javac test.java
javac -classpath ./ test.java均出现:
test.java:4:cannot access a
bad class file: ./a.class
class file contains wrong class: a.a
Please remove or make sure it appears in the correct subdirectory of the classpath.
a b = new a();
1 error
这样的错误在eclipseIDE下,
这样是没有错误的
所以我相信,是我的命令有问题。并且,假如把test.java 改成:
import ABC.a;
public class test {
public static void main(String argv[]){
a b = new a();
b.f();
}
}
则在命令行下也顺利通过编译
小弟不才,向各位请教到底是什么问题~
把test.java和a.java放入同一目录下,
然后执行javac -d . *.java
public static void main(String[] args) {
new a().f();
}
}
package ABC;public class a { public void f(){
System.out.println("f");
}
}我大概也是照楼主的方式写的,编译命令如下:
javac -cp ./ test.java编译运行成功。