java 环境配置(50分)

  • 主题发起人 wenzhi057
  • 开始时间
W

wenzhi057

Unregistered / Unconfirmed
GUEST, unregistred user!
我的JAVA是装在E盘
配置环境如下
classpath =.;E:/j2sdk1.4.2/lib/tools.jar;E:/j2sdk1.4.2/lib/dt.jar;E:/j2sdk1.4.2/lib
path=E:/j2sdk1.4.2/bin;
我做一个例子HelloWorld.java 直接保存在E盘根目录下
例子如下:
public class HelloWorld
{
public static void main(String[] args)
{
System.out.println("Hello World!");
}
}
我编译和运行上面没问题,但如果在上面加个package
例:package net.wen;
在运行就产生如下错误。
Exception in thread "main"
java.lang.NoClassDefFoundError: HelloWorld (wron
e: net/wen/HelloWorld)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:537)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.ja
3)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$100(URLClassLoader.java:55)
at java.net.URLClassLoader$1.run(URLClassLoader.java:194)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:187)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:274)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
请问这是怎么回事呢?
 
JAVA_HOME : E:/j2sdk1.4.2/bin;
 
你应该把HelloWorld.java和HelloWorld.class放在./net/wen下,包层次和文件夹的层次一一对应。
 
加了,也不行啊
到底JAVA的PACKAGE要怎样编译才行
 
你编译通过了没有! 还有你的执行语句呢? 是怎么写的??
 
to: kk2000
e:/> javac HelloWorld.java 这是通过的
e:/> java HelloWorld.java 执行这句有出上面那个错
是不是还需设置什么呢
 
to: kk2000

e:/> javac HelloWorld.java 这是通过的
e:/> java HelloWorld 执行这句有出上面那个错
是不是还需设置什么呢
 
E: 包的基目录>javac -classpath E:/包的基目录 net/wen/*.java
这样编译看看!!
 
e:/> javac HelloWorld.java
e:/> java HelloWorld
 
to:kk2000
我的那个HelloWorld.java
是直接放在E盘目录下
照你所说是不是用以下编译呢
e:/> javac E:/net/wen/HelloWorld.java
是吧,这样编译是读不到文件呢
 
to:kk2000
我的那个HelloWorld.java
是直接放在E盘目录下
那就不对拉! 一定是放在你的包目录下,明白吗??
比如你现在的包是 net.wen 那么你的HelloWorld.java
应该放在 这个目录下面../net/wen/HelloWorld.java
 
我也刚学 java,帮你顶一下
 
to: kk2000
这我也测试过
我在E盘先建的NET文件后建的WEN文件
然后把HelloWorld.java 拷贝到WEN文件下
接着我编译是如下:
e:/net/wen> javac HelloWorld.java
e:/net/wen> java HelloWorld
然后编译也是不行啊
出现也是如上面错误
 
TO:kk2000
QQ:615729142可聊下吧
 
D:/>javac /net/wen/HelloWorld.java 这样是编译通过了!!
 
D:/>java -classpath D:/ net.wen.HelloWorld 这样执行就可以拉
 
接受答案了.
 
顶部