我在eclipse中構建了一個Java項目。它在eclipse中運行良好。我之前已經將它作爲jar導出,並且工作正常。不過,自從上次出口以來已經有一段時間了。這一次,當我輸出並點擊jar時,什麼都沒有發生。從eclipse導出jar不起作用
在命令行中運行它揭示了以下錯誤:
C:\>java -jar "C:\Users\Quinn\Desktop\think.jar"
Exception in thread "main" java.lang.IllegalAccessException: Class org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader can not access a member of class think.Main with modifiers "public static"
這個錯誤是什麼意思?有什麼理由可以發生這種情況嗎?我一直無法在網上找到任何提及。
非常感謝。
編輯: 當我解壓的jar,內容是這樣的:
清單(在META-INF)看起來是這樣的:(是的,它有一個額外的空行)
Manifest-Version: 1.0
Rsrc-Class-Path: ./ substance-6.1.jar trident.jar
Class-Path: .
Rsrc-Main-Class: think.Main
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
我很困惑,在從命令行運行時,如何涉及eclipse類'org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader'。你有什麼想法是怎麼回事?另外,您是否可以解壓縮您的jar並向我們展示存檔的結構? – thatidiotguy
Eclipse JDK和系統jdk不同,我猜這裏。請檢查 – Bhupi
老實說,我也對此感到困惑。我從未指定明確使用org.eclipse中的任何內容。我現在正在開箱拆箱,並且很快就會有這個功能 – B1CL0PS