java.lang.ClassNotFoundException 这是怎么回事?
importjavax.microedition.midlet.MIDlet;importjavax.microedition.midlet.MIDletStateCha...
import javax.microedition.midlet.MIDlet;
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;
public class HelloWorldMidlet extends MIDlet {
//TextBox类对应文本框,用于控制文本的输入,并显示输入
public TextBox textbox;
public HelloWorldMidlet() {
// TODO Auto-generated constructor stub
super();
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
//新建一个名为"测试程序"的文本框,文本框内默认输入"Hello World"
textbox=new TextBox("测试程序","Hello World!",20,0);
//调用自己写的MyAdd接口
MyAdd();
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
//自己加入的新接口
public void MyAdd(){
//将textbox设为屏幕当前现实的对象
Display.getDisplay(this).setCurrent(textbox);
}
}
代码是照着书上写的,一运行就说java.lang.ClassNotFoundException 我一开始以为是环境没有配置,然后把环境变量配置了,可是还是报错,这可怎么办呀?
那位高手给我指点一下阿,谢谢了~ 展开
import javax.microedition.midlet.MIDletStateChangeException;
import javax.microedition.lcdui.*;
public class HelloWorldMidlet extends MIDlet {
//TextBox类对应文本框,用于控制文本的输入,并显示输入
public TextBox textbox;
public HelloWorldMidlet() {
// TODO Auto-generated constructor stub
super();
}
protected void startApp() throws MIDletStateChangeException {
// TODO Auto-generated method stub
//新建一个名为"测试程序"的文本框,文本框内默认输入"Hello World"
textbox=new TextBox("测试程序","Hello World!",20,0);
//调用自己写的MyAdd接口
MyAdd();
}
protected void pauseApp() {
// TODO Auto-generated method stub
}
protected void destroyApp(boolean arg0) throws MIDletStateChangeException {
// TODO Auto-generated method stub
}
//自己加入的新接口
public void MyAdd(){
//将textbox设为屏幕当前现实的对象
Display.getDisplay(this).setCurrent(textbox);
}
}
代码是照着书上写的,一运行就说java.lang.ClassNotFoundException 我一开始以为是环境没有配置,然后把环境变量配置了,可是还是报错,这可怎么办呀?
那位高手给我指点一下阿,谢谢了~ 展开
7个回答
展开全部
路径错误,代码输错了,CLASSPATH后面应该有“./路径”
java.lang.ClassNotFoundException这种提示出现后只要在环境变量里的系统变量里CLASSPATH加上./当前路径就可以了,这种情况一般是路径设置不对,或者类名写错了、包名写错了。
NotFoundException意思是JRE在自己知道的路径里没找到用户要的类,如果不用IDE的话,就好好检查一下classpath有没有加上“.”也就是当前目录,或者执行的位置是不是指向了class文件所在的路径。
JAVA常见错误
NoClassDefFoundError是error,继承java.lang.Error继承,ClassNotFoundException来自Exception,是检查异常。
如通过反射Class.forName()ClassLoader.loadClass,找不到类就会ClassNotFoundException。现在通过反射已经把该class加载到内存中,再次调用加载该类也会报。
如果一个类编译时存在,在运行时找不到就会报NoClassDefFoundError,一般是编译打包出了问题,比如开发类路径和运行类路径不同。
展开全部
没找到类
一般是 classpath 路径设置不对,或者类名写错了、包名写错了
反正是 JRE 在自己知道的路径里没找到你要的类
如果不用 IDE 的话,你就好好检查一下 classpath 有没有加上 “.”也就是当前目录
或者你执行的位置是不是指向了 class 文件所在的路径
一般是 classpath 路径设置不对,或者类名写错了、包名写错了
反正是 JRE 在自己知道的路径里没找到你要的类
如果不用 IDE 的话,你就好好检查一下 classpath 有没有加上 “.”也就是当前目录
或者你执行的位置是不是指向了 class 文件所在的路径
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你描述得不详细。
出现这种错误肯定会说具体是那个类找不到。
看样子你好像是在IDE(计算机语言的集成开发工具)写的代码,但又不能确定,因为你通过了IDE的编译,就不会出现ClassNotFoundException这种错误。你也有可能是在控制台运行的程序。总之就是不知道你是在什么情况下出现的这种错误。这么说吧:
一、如果你在IDE里运行程序,你应当导入相应的jar包
二、如果你是在控制台运行,则应当将相应的jar文件加入到classpath中,也就是javac -classpath 你的jar包名.jar 要编译的类文件名
出现这种错误肯定会说具体是那个类找不到。
看样子你好像是在IDE(计算机语言的集成开发工具)写的代码,但又不能确定,因为你通过了IDE的编译,就不会出现ClassNotFoundException这种错误。你也有可能是在控制台运行的程序。总之就是不知道你是在什么情况下出现的这种错误。这么说吧:
一、如果你在IDE里运行程序,你应当导入相应的jar包
二、如果你是在控制台运行,则应当将相应的jar文件加入到classpath中,也就是javac -classpath 你的jar包名.jar 要编译的类文件名
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
个人已发现的有2种情况:
1、少引用(导包)jar包了。
2、引用路径写错了,或少写了。(重点关注配置文件与java代码里对用的部分)
注:控制台报java.lang.ClassNotFoundException,浏览器报500错误。
1、少引用(导包)jar包了。
2、引用路径写错了,或少写了。(重点关注配置文件与java代码里对用的部分)
注:控制台报java.lang.ClassNotFoundException,浏览器报500错误。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2019-12-12
展开全部
我发现包用中文名也会发生这个问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询