java.lang.NoClassDefFoundError: javax/json/Json no maven or IDE
java.lang.NoClassDefFoundError: javax/json/Json no maven or IDE
我正在尝试一个简单的 json java 程序(没有 Maven 或 IDE)。
这是我的 java 文件:
import javax.json.*;
import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;
import javax.json.JsonWriter;
class JsonTest {
public static void main(String[] args){
JsonObject obj = Json.createObjectBuilder()
.add("name", "foo")
.add("num", new Integer(100))
.add("balance", new Double(1000.21))
.add("is_vip", new Boolean(true)).build();
System.out.print(obj);
}
}
在这个文件的同一目录中,我有 jar 文件:
javax.json-1.0.jar
我在编译时没有遇到任何错误:
javac -classpath ./javax.json-1.0.jar JsonTest.java
但是当我 运行 程序时出现错误:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/json/Json
at JsonTest.main(JsonTest.java:10)
Caused by: java.lang.ClassNotFoundException: javax.json.Json
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)
... 1 more
编译没有错误,为什么会出现这个错误。我已经用这个错误搜索了其他问题,但与它们不同的是,我没有使用任何 IDE 或 maven。任何帮助将不胜感激。
你不是 运行 它与类路径上的 JSON JAR 文件。
试试这个:
java -classpath .:./javax.json-1.0.jar JsonTest
在 Windows 上将 :
更改为 ;
....
我正在尝试一个简单的 json java 程序(没有 Maven 或 IDE)。 这是我的 java 文件:
import javax.json.*;
import javax.json.Json;
import javax.json.JsonObject;
import javax.json.JsonObjectBuilder;
import javax.json.JsonWriter;
class JsonTest {
public static void main(String[] args){
JsonObject obj = Json.createObjectBuilder()
.add("name", "foo")
.add("num", new Integer(100))
.add("balance", new Double(1000.21))
.add("is_vip", new Boolean(true)).build();
System.out.print(obj);
}
}
在这个文件的同一目录中,我有 jar 文件:
javax.json-1.0.jar
我在编译时没有遇到任何错误:
javac -classpath ./javax.json-1.0.jar JsonTest.java
但是当我 运行 程序时出现错误:
Exception in thread "main" java.lang.NoClassDefFoundError: javax/json/Json
at JsonTest.main(JsonTest.java:10)
Caused by: java.lang.ClassNotFoundException: javax.json.Json
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)
... 1 more
编译没有错误,为什么会出现这个错误。我已经用这个错误搜索了其他问题,但与它们不同的是,我没有使用任何 IDE 或 maven。任何帮助将不胜感激。
你不是 运行 它与类路径上的 JSON JAR 文件。
试试这个:
java -classpath .:./javax.json-1.0.jar JsonTest
在 Windows 上将 :
更改为 ;
....