怎么解决java.lang.NoClassDefFoundError错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么解决java.lang.NoClassDefFoundError错误相关的知识,希望对你有一定的参考价值。
原因:NoClassDefFoundError发生在编译时对应的类可用,而运行时对应的类不可用导致的错误。解决方法:
1、jar命令运行程序,但类并没有在jar文件的manifest文件中的classpath属性中定义,将jar放到路径下即可
2、程序的启动脚本覆盖了原来的classpath环境变量
3、因为NoClassDefFoundError是java.lang.LinkageError的一个子类,所以可能由于程序依赖的原生的类库不可用而导致
4、检查日志文件中是否有java.lang.ExceptionInInitializerError这样的错误,NoClassDefFoundError有可能是由于静态初始化失败导致的
5、如果你工作在J2EE的环境,有多个不同的类加载器,也可能导致NoClassDefFoundError
6、对应的Class在java的classpath中不可用 参考技术A 导入相应的包即可
网页乱码怎么解决?
参考技术A 问题一:网页出现乱码怎么办 网页出现乱码怎么办解决办法:有以下四种解决办法:
1、在浏览器中选择“编码”菜单
事先为浏览器安装多语言支持包(例如在安装IE币?安装多语言支持包),这样当浏览网页出现乱码时,即可手工更改此类网页的编码方式,在浏览器中选择菜单栏下的“查看??“编码”/“自动选择”/
简体中文(GB2312),如为繁体中文则选择“查看”/“编码”/“自动选择”/繁体中文(BIG5),其他语言依此类推,选择相应的语系,这样便可消除网页乱码现象
2、修改网页代码
用FrontPage等软件打开出现乱码的网页,修改该网页代码,在以下句子中 〈META CONTENT=“text/html;charset=ISO-8859-1”〉,将语种“ISO-8859-1”改为GB2312,如果是繁体网页则改为BIG5
3、无乱码保存网页
用浏览器打开该网页,在“查看”/“编码”中选择“自动选择”,存盘时保存类型选“WEB页”,编码选择“UNICODE”,这样保存过的网页再次打开时,在浏览器菜单“查看”/“编码”中不管选择简体中文(GB2312)、简体中文(HZ)还是UNICODE(UTF-8)或繁体中文(BIG5),最终显示都不会出现乱码
问题二:如何解决HTML网页中文显示乱码的方法 把文件保存成utf-8的编码,仿着上面的位置,在页面加上中间那行代码
问题三:浏览器浏览个网页全是乱码怎么回事 应该是网页问题。看看其他的网页有事情吗。如果没有问题。把页面关了重新打开。或者换成qq浏览器试试。他打开网页的速度较快。 里面的手机软件和游戏很齐全,各种类型的都可以在这里面找到,所以还是很方便的哦。
问题四:页面乱码问题怎么解决? 1.第一个地方的编码格式为jsp文件的存储格式。Eclipse会根据这个编码格式保存文件。并编译jsp文件,包括里面的汉字。
第二处编码为解码格式。因为存为UTF-8的文件被解码为iso8859-1,这样如有中文肯定出乱码。也就是必须一致。而第二处所在的这一行,可以没有。缺省也是使用iso8859-1的编码格式。所以如果没有这一行的话,“我是个好人”也会出现乱码。必须一致才可以。
第三处编码为控制浏览器的解码方式。如果前面的解码都一致并且无误的话,这个编码格式没有关系。有的网页出现乱码,就是因为浏览器不能确定使用哪种编码格式。因为页面有时候会嵌入页面,导致浏览器混淆了编码格式。出现了乱码。
2.表单使用Post方式提交后接收到的乱码问题
这个问题也是一个常见的问题。这个乱码也是tomcat的内部编码格式iso8859-1在捣乱,也就是说post提交时,如果没有设置提交的编码格式,则会以iso8859-1方式进行提交,接受的jsp却以utf-8的方式接受。导致乱码。既然这样的原因,下面有几种解决方式,并比较。
A,接受参数时进行编码转换
String str = new String(request.getParameter(something).getBytes(ISO-8859-1),utf-
8) ; 这样的话,每一个参数都必须这样进行转码。很麻烦。但确实可以拿到汉字。
B,在请求页面上开始处,执行请求的编码代码, request.setCharacterEncoding(UTF-8),把提交内容的字符集设为UTF-8。这样的话,接受此参数的页面就不必在转码了。直接使用 String str = request.getParameter(something);即可得到汉字参数。但每页都需要执行这句话。这个方法也就对post提交的有效果,对于get提交和上传文件时enctype=multipart/form-data是无效的。稍后下面单独对这个两个的乱码情况再进行说明。
C,为了避免每页都要写request.setCharacterEncoding(UTF-8),建议使用过滤器对所有jsp。
现在将常见的乱码问题分为JSP页面显示中文乱码、表单提交乱码两类。
1)JSP页面中显示中文乱码
在JSP文件中使用page命令指定响应结果的MIME类型,如
2)表单提交乱码
表单提交时(post和Get方法),使用request.getParameter方法得到乱码,这是因为tomcat处理提交
的参数时默认的是iso-8859-1,表单提交get和post处理乱码问题不同,
下面分别说明。
(1)POST处理
对post提交的表单通过编写一个过滤器的方法来解决,过滤器在用户提交的数据被处理之前被调用
,可以在这里改变参数的编码方式,过滤器的代码如下:
Java代码
CharacterEncodingFilter.java:
public class CharacterEncod......>>
问题五:网站出现乱码,怎么解决 〈HTML〉〈HEAD〉〈META CONTENT=“text/html;charset=ISO-8859-1”〉〈/HEAD〉....〈/HTML〉的语句,浏览器在显示此页时,就会出现乱码。因为浏览器会将此页语种辨认为“欧洲语系”。
解决办法:
1.将语种“ISO-8859-1”改为GB2312,如果是繁体网页则改为BIG5。
2.不修改网页代码,事先为浏览器安装多语言支持包(例如在安装IE时要安装多语言支持包),这样在浏览网页出现乱码时,就可以在浏览器中选择菜单栏下的 “查看”→ “编码”→“自动选择””→“简体中文(GB2312),如为繁体中文,则选择“查看”→“编码”→“自动选择””→“ 繁体中文(BIG5),其他语言依此类推选择相应的语系,这样可消除网页乱码现象。
3.利用多内码显示平台来转换内码。
4.网页无乱码保存的方法是:用浏览器打开网页时,在 “查看”→“编码”中选择“自动选择”,存盘时保存类型选 “Web页”,编码选择“UNICOD”,这样保存过的网页再次打开时,在浏览器菜单“查看”→“编码”中不管选择简体中文(GB2312)、简体中文 (HZ)还是UNICODE(UTF-8)或繁体中文(BIG5),最终显示都不会出现乱码。
5.如果是数据库里取出的资料乱码,则请将数据库里所有表及字段的编码都设为与页面的一样.
问题六:网页显示的是乱码怎么办 是打开别人的网页吗?如果是打开网页出现乱码的情况,是因为编码不统一的问题,解决办法,直接在乱码页面,右键--编码--如果是utf-8的话,你改成gb2312,如果是gb2312的话,你改成utf-8。就可以解决了。如果不是这两个的话,你直接改成这两个的任一试试。
如果是你自己做的网页的话,可以在网页最上边的meta的地方加上编码即可。
问题七:制作网页时乱码了,怎么办? 乱码分三种情况:
1乱码。
2.javascript乱码
3.数据库乱码(我用的是mysql,其他也一样,操作数据库是直接用phpmyadmin操作)
网页设计基本就这三种情况。笔者不幸的全遇到了(这是巧合吗?坑啊),但幸运的是,在笔者阅读了大量相关资料以及对乱码原理深入理解后,已经将其全部解决。
html乱码的解决
1.你没有Dreamweaver的话:
把这行代码复制到你的之间,这会使你的网页打开时,浏览器默认编码为utf8,当然,建议你所有的网页编码统一,都设置为utf8,或者都设置为gb2312。
2.如果你有Dreamweaver的话:
你可以不必记住这行代码,因为Dreamweaver可以设置,如图:
选择页面属性(上边的修改中也可以找到),选择标题/编码,更改编码确保编码统一(建议统一为utf8或gb2312)
选择统一编码后点击“应用”,Dreamweaver会自动将一行代码加入你的网页。
但是记住,要统一编码。在你制作第一张网页时就这样设置,这样做的好处是你以后用Dreamweaver编辑的每一张网页都会自动统一编码。
js乱码的解决
这里js乱码是指由js制作的弹窗内容为乱码的情况,这种情况很头疼,但一般不会出现,如果出现,不好解决。
1.若你的js弹窗内容出现乱码,首先检查原网页代码中的输出内容是否是乱码(由于乱改页面设置,导致本来的汉字变成乱码)
2.如果你确保你的原网页代码中不是乱码,那么说明js输出内容与页面编码不符,这时我们应强制将输出内容转变编码与页面编码统一。
强制转换编码的方法有很多,我这里使用php做到了这些
alert('$ss');;
?>
这样做的好处是,无论网页编码是utf8还是gb2312,你的js弹窗内容都不会是乱码。但缺点也很明显,你的文件后缀名从需要改为.php(否则php不被编译),而且php执行占用服务器内存,但只是转换编码并不用担心消耗太多服务器内存。
数据库乱码的解决
这里数据库乱码是指
1.插入正常数据后,数据库里显示乱码
2.正常数据读取出在页面显示乱码
3.建立数据库时数据库(表、字段)的编码有问题
解决办法:
1.插入数据库前将数据强行转换编码,与数据库统一。(这里笔者操作数据库所用的是php)
这样在数据库内查看数据时......>>
问题八:打开网页老是乱码 怎么办 下载谷歌等浏览器测绩一下,如果好用,上你说的网站、或浏览其它网页时就用这个软件,这些都是不用IE做内核的,与你用IE不冲突(有问题请你追问我)。
其他在看看360浏览器试试,或还原系统或重装。
问题九:打开网页容易出现乱码是怎么回事 在页面的空白处右击鼠标,选择编码(E),再勾选自动选择。。刷新一下就好,希望能帮到你~~~
以上是关于怎么解决java.lang.NoClassDefFoundError错误的主要内容,如果未能解决你的问题,请参考以下文章