[英]Adding json jar to classpath java
我是Java世界的新手。 我想添加Json lib來編譯我的程序。 我從這里下載了文件。
當我嘗試編譯程序時
javac -classpath json.jar MyClassName.java
我收到錯誤:
Note: JsonSimpleExample.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
當我試圖跑:
java MyClassName
我越來越:
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/simple/JSONObject
at MyClassName.main(MyClassName.java:9)
Caused by: java.lang.ClassNotFoundException: org.json.simple.JSONObject
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 1 more
我在哪里弄錯了?
在使用java
運行時,您必須使用-classpath
。
java -classpath json.jar MyClassName
你犯了兩個錯誤:
在運行應用程序時忘記設置類路徑:
java -classpath json.jar;. MyClassName
(假設您在Windows上,並且您在包含MyClassName.class
的目錄中)。 如果您使用的是Unix,請更換;
通過:
。
請注意,將類放在默認的root包中是不好的做法。
錯誤的原因是,類在編譯期間出現並讓應用程序成功編譯並成功鏈接但在運行時不可用。
java -classpath json.jar MyClassName (or)
java -cp json.jar MyClassName
第一個輸出是來自Java編譯器的關於使用未經檢查的代碼(如原始集合)的警告。 類文件已成功生成。
如果要修復這些警告,則可以使用-Xlint
命令行開關進行編譯並修復/禁止未檢查/不安全警告。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.