用盡了關於問題原因的想法。我有一個Java jar(如果這很重要,請從intellij下的gradle構建)。Java Jar - 類路徑問題
Jar有一個清單。
啓動含有JAR目錄
java -jar MyJar.jar
給出「無法找到或加載主類companyname.mainclass」的Java從清單作爲讀取裏面的jar清單文件編輯到
mainclass2
將錯誤更改名稱消息清單僅包含在一條線上的版本,在一條線上然後主類屬性,然後2個空行
所有依賴關係是在一個/ lib文件夾相對於罐子所以清單中沒有指定類路徑
在zip文件程序中打開jar會顯示文件夾
companyname
,其中包含文件mainclass
,因此限定名稱會反映在jar結構中。大寫也是正確的。手動指定類名
java -cp MyJar.jar companyname.mainclass
給出了同樣的類未找到錯誤有問題的類確實有一個主要方法,並且不會在IDE下運行正常,當解壓縮。
我錯過了什麼(除了頭上越來越多的頭髮)?
修改的其他詳情: - 使用Java 8
罐子結構:
-META-INF
MANIFEST.MF
-companyname
-module
-interfaces
interface1.class
-commands
baseCommand.class
register.class
specialCommand.class
moduleSpec.class
moduleProcessor.class
mainclass.class
log4j.xml
springconfig1.xml
springconfig2.xml
清單文件:
Manifest-Version: 1.0
Main-Class: companyname.mainclass
(newline char here)
(newline char here)
在編輯中分享jar文件 –
中文件的結構和位置。 – SeeMoreGain
介意如果您還添加清單的內容? –