這是一個典型的錯誤消息,但沒有搜索結果可以幫助我。我正在嘗試構建&運行某人編碼的java工具。JAR:找不到主類
我得到以下錯誤:
Could not find the main class: ConnJKSEngine. Program will exit.
這裏是我的清單:
Main-Class: ConnJKSEngine
我也改變了這
Main-Class: ConnJKSEngine.ConnJKSEngine
和
Main-Class: ConnJKSEngine/ConnJKSEngine
(它在最後有一個換行符)。沒有任何區別
我這是怎麼建的jar:
javac -cp ConnJKSEngine/ ConnJKSEngine/ConnJKSEngine.java
jar -cvfm ConnJKSEngine.jar ConnJKSEngine/ConnJKSEngineManifest ConnJKSEngine/*.class
chmod +x ConnJKSEngine.jar
這是我嘗試運行jar(試過所有的人):
java ConnJKSEngine.jar
java -jar ConnJKSEngine.jar
java -cp ConnJKSEngine.jar ConnJKSEngine
這是由jar -tf ConnJKSEngine.jar
META-INF/
META-INF/MANIFEST.MF
ConnJKSEngine/ConnJKSEngine.class
ConnJKSEngine/ConnJKSEngine_GenKey.class
ConnJKSEngine/ConnJKSEngine_GetPubKey.class
ConnJKSEngine/ConnJKSEngine_Operation.class
ConnJKSEngine/ConnJKSEngine_PrivDec.class
ConnJKSEngine/ConnJKSEngine_Sign.class
給出表的內容我已經改變爲ConnJKSEngine
目錄並執行java ConnJKSEngine
,它可以正確打印使用信息。這使我確信主類存在並且可以被執行。所以建造這個罐子一定是錯的,對吧?
因此,我繼續解壓縮jar到不同的目錄(unzip ConnJKSEngine.zip
),並得到了上面顯示的目錄結構。如果我進入ConnJKSEngine
目錄並執行java ConnJKSEngine
,它會正確執行。
在這裏,我卡住了:類在那裏,它在子目錄中,它可以被執行。清單似乎是正確的。由於我不是一名Java程序員,我現在來到這裏。任何想法可能會發生什麼? (注:Linux系統)
編輯源可以在這裏找到:https://github.com/Javex/JKSEngine
您是否試圖聯繫該軟件的編碼器或生產者或當前支持該代碼的任何實體? –
給你有來源? – Toilal
是的,但他現在沒有時間研究這個問題,也不知道他的頭頂。 – javex