环境突然出错,编译通过但运行不了

ljyadbefgh 2010-05-04 09:18:28
首先我原来的环境配置肯定是没问题的,已经用了几个月了,但今天在练习Scanner、BufferedReader类时,突然运行不了了。用javac编译时是没问题的,但是用java运行时却
提示“Exception in thread "main" java.lang.NoClassDefFoundError”。之后运行任何文件都如此,包括以前正确运行的class文件。

在PATH和CLASSPATH上我的设置和以前一样没有变动,我重装了JAVA也不行。特向各位高手请教。我使用的安装文件是jdk-6u13-windows-i586-p.exe,先声明我的操作方式没有错误
...全文
150 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
Mars_Ma_OK 2010-05-05
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 justlearn 的回复:]
我的classpath
.;%JAVA_HOME%\jre\lib\javaws.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
[/Quote]

up!
  • 打赏
  • 举报
回复
在dos也可以运行。没问题啊
  • 打赏
  • 举报
回复
我运行了一下,在Jcreatosr Pro上可以运行啊
justlearn 2010-05-04
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 bao110908 的回复:]
JDK 1.5 及之后的版本不再需要配置 classpath 变量了。
[/Quote]
汗,刚发觉,受教了
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复

import java.io.*;
public class BufferedReader1{
public static void main(String[] args) throws Exception{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String a=null;
while((a=br.readLine())!=null){
System.out.println("用户键盘输入是:" +a);
}
}
}
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复
代码倒不重要,不过我给下我出错前的代码,也就是我是运行了这个文件后,就开始运行不了class文件了

import java.io.*; public class BufferedReader1{
public static void main(String[] args) throws Exception{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
String a=null;
while((a=br.readLine())!=null){
System.out.println("用户键盘输入是:" +a);
}
}
}

  • 打赏
  • 举报
回复
JDK 1.5 及之后的版本不再需要配置 classpath 变量了。
justlearn 2010-05-04
  • 打赏
  • 举报
回复
我的classpath
.;%JAVA_HOME%\jre\lib\javaws.jar;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
  • 打赏
  • 举报
回复
就你目前贴出的这些信息看来,一点问题都看不出来。

执行 javac -version 和 java -version 的结果呢?

另外,你的代码如果是很保密的话,就不用贴了。
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复
F:\>javac -version
javac 1.6.0_13

F:\>java -version
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) Client VM (build 11.3-b02, mixed mode, sharing)
justlearn 2010-05-04
  • 打赏
  • 举报
回复
classpath里面要有dt.jar和tools.jar的
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复
如果是程序代码没问题,我家里两台电脑,在另一台电脑是可以正常运行的。不知道是不是中毒了,好郁闷,学得正有兴趣呢。另一台电脑太旧不想用
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复
F:\>echo %path%
C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;D:\Java\jdk1.6.0_13\bin

就是这个,谢谢。在环境方面一直按书来,呵呵,还在傻傻的学语法,环境变点都不会了
  • 打赏
  • 举报
回复
还是没有看到你贴代码呢
  • 打赏
  • 举报
回复
在控制台中用鼠标右击,选择菜单中的第一个“标记”,光标会变成长方块,在控制台中选中需要复制的字符,敲个回车就可以复制到剪贴板中去了。
  • 打赏
  • 举报
回复
你确定这个是控制台输出的结果?还是你自己写的?
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复
c:windows\system32c:windows;c:windows\System32\Wbem;D:\Java\jdk1.6.0_13\bin;D:\Java\jdk1.6.0_13\bin;\

以上是
echo %path%的运行结果。
  • 打赏
  • 举报
回复
这个没错,那个没错,那会是什么错了呢?

在命令行中执行 echo %path% 把结果贴出来看看。或者执行:

javac -version 和 java -version 的结果。顺便再把你写的代码贴出来看看。
adidasone 2010-05-04
  • 打赏
  • 举报
回复
不知所云
ljyadbefgh 2010-05-04
  • 打赏
  • 举报
回复
classpath我的设置是.;以前也是如此,没出过问题

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧