我正在尝试在 java 中创建一个 JSON 对象并编译它。
import org.json.simple.JSONObject;
class JsonEncodeDemo
{
public static void main(String[] args){
JSONObject obj = new JSONObject();
obj.put("name", "foo");
obj.put("num", new Integer(100));
obj.put("balance", new Double(1000.21));
obj.put("is_vip", new Boolean(true));
System.out.print(obj);
}
}
我已经下载了 json-simple-1.1.1.jar 并将其存在于我当前的文件夹中。 我使用
进行编译javac -cp json-simple-1.1.1.jar JsonEncodeDemo.java.
它编译得很好。但是当我尝试运行它时 -
java JsonEncodeDemo
它给了我以下内容 -
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/simple/JSONObject
at JsonEncodeDemo.main(JsonEncodeDemo.java:12)
Caused by: java.lang.ClassNotFoundException: org.json.simple.JSONObject
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
我还将 jar 放入我的 lib 和 bin 文件夹中并尝试使用 - 进行编译
javac -cp '.\bin\*;.\lib\*;json-simple-1.1.1.jar' JsonEncodeDemo.java
并运行
java JsonEncodeDemo
还是不行。有人可以帮我吗?
最佳答案
假设 json-simple-1.1.1.jar 与 JsonEncodeDemo 位于同一目录:
编译
javac -cp json-simple-1.1.1.jar JsonEncodeDemo.java
运行
java -cp json-simple-1.1.1.jar: JsonEncodeDemo
关于java - 线程 "main"java.lang.NoClassDefFoundError : org/json/simple/JSONObject - java commandline runtime error 中出现异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38776345/