当前位置: 技术问答>java相关
问一个关于package的问题
来源: 互联网 发布时间:2017-04-20
本文导语: 有如下一个java文件 C:HelloWorldHelloWorld.java 内容如下: package helloWorld; public class HelloWorld { public static void main(String[] args) throws Exception { System.out.println("Hello World!"); } } 在C:HelloWorld下用javac HelloWorld.java 编...
有如下一个java文件 C:HelloWorldHelloWorld.java 内容如下:
package helloWorld;
public class HelloWorld {
public static void main(String[] args) throws Exception {
System.out.println("Hello World!");
}
}
在C:HelloWorld下用javac HelloWorld.java 编以后,无论用
java HelloWorld 或 java -classpath . HelloWorld 都出现:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld错误
但是将package helloWorld去掉后,再编译,然后用上述两个命令都可运行,这是什么原因???????
那位能给解释一下,谢了!
package helloWorld;
public class HelloWorld {
public static void main(String[] args) throws Exception {
System.out.println("Hello World!");
}
}
在C:HelloWorld下用javac HelloWorld.java 编以后,无论用
java HelloWorld 或 java -classpath . HelloWorld 都出现:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld错误
但是将package helloWorld去掉后,再编译,然后用上述两个命令都可运行,这是什么原因???????
那位能给解释一下,谢了!
|
1. 用"java -d . HelloWorld.java"编译, 会在"c:HelloWorldHelloWorld"下生成HelloWorld.class.
2. 在"c:HelloWorld"下用"java HelloWorld.HelloWorld"运行就没有问题了.
用了包后,一切就变得不一样了. :-)
2. 在"c:HelloWorld"下用"java HelloWorld.HelloWorld"运行就没有问题了.
用了包后,一切就变得不一样了. :-)