Java can';无法使用json对象解决此错误

Java can';无法使用json对象解决此错误,java,Java,我写这段代码是为了读取json数据,运行代码时出现了一个错误 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unk

我写这段代码是为了读取json数据,运行代码时出现了一个错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source).....
首先,这是我编写的代码(我更改了代码以更正json字符串,但问题仍然存在)

我在运行代码时发现了这个错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClass(Unknown Source)
    at java.security.SecureClassLoader.defineClass(Unknown Source)
    at java.net.URLClassLoader.defineClass(Unknown Source).....
如果我删除了关于json的行,那么错误就会消失。

在'true'后面有一个挂起的“,”

从技术上讲,JSON中的字符串和属性名应该使用双引号,而不是单引号。

在“true”之后有一个挂起的“,”

从技术上讲,JSON中的字符串和属性名应该使用双引号,而不是单引号。

类路径中缺少库

String jsonTxt = "{'lhs': '100 Euros','rhs':'128.551738 Australian dollars','error':'','icc': 'true'}";        
JSONObject json = (JSONObject) JSONSerializer.toJSON( jsonTxt );
System.out.println( "lhs: " + json.getString("lhs") );
System.out.println( "rhs: " + json.getString("rhs") );
System.out.println( "error: " + json.getString("error") );
System.out.println( "icc: " + json.getString("icc") );
如果遇到
NoClassDefFoundError
问题,请尝试将类名插入-这将告诉您可以在jar文件中找到该类。

您的类路径中缺少库

String jsonTxt = "{'lhs': '100 Euros','rhs':'128.551738 Australian dollars','error':'','icc': 'true'}";        
JSONObject json = (JSONObject) JSONSerializer.toJSON( jsonTxt );
System.out.println( "lhs: " + json.getString("lhs") );
System.out.println( "rhs: " + json.getString("rhs") );
System.out.println( "error: " + json.getString("error") );
System.out.println( "icc: " + json.getString("icc") );
如果您曾经被一个
NoClassDefFoundError
难倒,请尝试将类名插入-这将告诉您在jar文件中可以找到该类。

您的运行时类路径中没有该类。

您的运行时类路径中没有该类

String jsonTxt = "{'lhs': '100 Euros','rhs':'128.551738 Australian dollars','error':'','icc': 'true'}";        
JSONObject json = (JSONObject) JSONSerializer.toJSON( jsonTxt );
System.out.println( "lhs: " + json.getString("lhs") );
System.out.println( "rhs: " + json.getString("rhs") );
System.out.println( "error: " + json.getString("error") );
System.out.println( "icc: " + json.getString("icc") );
输出:

lhs: 100 Euros
rhs: 128.551738 Australian dollars
error: 
icc: true
您可以给json字符串加双引号(“)或单引号(”)或不加引号的键。所有操作都有效

您需要以下罐子:

1. commons-lang-2.4.jar
2. ezmorph-1.0.jar
3. json-lib-0.9.jar
要通过eclipse添加JAR,请执行以下操作:

1.right click on project folder
2.click on prperties
3.select "java build path"
4.select libraries tab
5.click on "Add External jars"
6.Browse your jars, select and click ok.
输出:

lhs: 100 Euros
rhs: 128.551738 Australian dollars
error: 
icc: true
您可以为json字符串提供双引号(“)或单引号(”)或不带引号的键。一切顺利

您需要以下罐子:

1. commons-lang-2.4.jar
2. ezmorph-1.0.jar
3. json-lib-0.9.jar
要通过eclipse添加JAR,请执行以下操作:

1.right click on project folder
2.click on prperties
3.select "java build path"
4.select libraries tab
5.click on "Add External jars"
6.Browse your jars, select and click ok.


这些问题并不是他
NoClassDefFoundError
.s/should/mush的原因。JSON解析器可以接受单引号,但很有可能需要双引号。这些问题并不是他的
NoClassDefFoundError
.s/should/mush的原因。JSON解析器可能接受单引号,但很可能需要双引号。对不起,我该怎么做,iam on Eclipse我相信您可以查看Run->Run Configuration,选择您的应用程序配置,并确保jar文件位于类路径上。无论选择哪个库,都需要确保所有依赖项都位于类路径上。问题不在于这个库——我用过这个库,它工作得很好。您需要学习如何在Eclipse中设置类路径。我相信你可以在Run->Run Configuration中查看,选择你的应用程序配置,并确保jar文件位于类路径上。无论你选择哪个库,你仍然需要确保所有依赖项都位于类路径上。问题不在于这个库——我用过这个库,它工作得很好。您需要学习如何在Eclipse中设置类路径。也许会对你有所帮助。更新答案。。请检查第二点,它很可能会删除异常。它不适用于web,它的windows应用程序将使用java.oopppssss运行。。更新了步骤,请遵循eclipsesame错误中的步骤:(你能在你的计算机上制作这个程序并交给我吗?..我已经在我的机器上执行了代码并更新了答案。请检查它。更新了答案..请检查第二点,很可能它会删除异常。它不适用于web,它的windows应用程序将使用java运行。oopppssss..更新了步骤,请遵循在日食中,我犯了一个错误:(你能在你的计算机上制作程序并交给我吗?..我已经在我的机器上执行了代码并更新了答案。请检查。错误消失了,因为你正在使用的JSON库依赖于Apache commons lang。如果你不使用库,你就不需要依赖性,因此你不会得到异常。添加一个libra创建类路径是您需要学习的一项基本技能-除非您从头开始编写所有内容,否则它会一次又一次出现。我给了您一个链接,指向如何在Eclipse中将jar添加到运行时类路径的说明-请学习如何执行此基本任务。错误会消失,因为您使用的JSON库依赖于Apachecommons lang。如果您不使用库,则不需要依赖项,因此不会出现异常。将库添加到类路径是您需要学习的一项基本技能-除非您从头开始编写所有内容,否则它将一次又一次出现。我为您提供了一个指向如何将jar添加到运行时类路径的说明的链接在Eclipse中-请学习如何完成这个基本任务。