[英]Jar executable can't find main class - weird one
你好,我有一個奇怪的問題。 我用eclipse打包了一個應用程序以生成可執行的jar文件,當我運行它時,出現錯誤“無法找到主類錯誤[...]”。
當我從命令行示例運行相同的程序包時
java -jar app.jar
該程序啟動。
奇怪的是,該錯誤僅在Java 7環境中編譯的應用程序發生。
如果我將項目設置為Java 6,一切正常。
我應該怎么做才能運行Java 7 jar可執行文件?
謝謝你的幫助。
檢查您的jre的版本(如果是jre6),則可能是一個問題,嘗試將您的jre更新為jre7,這可能會引起麻煩。
您需要在清單文件中設置主類
清單文件樣本
Manifest-Version: 1.0
Created-By: 1.3.1 (Sun Microsystems, Inc.)
Main-Class: com.package.MainClassName
Class-Path: oc4j.jar
確保已在示例jar文件中設置了所有這些內容
當JVM無法找到與Jar文件關聯的主類時,會發生此問題,JVM使用Manifest.mf中的Main-Class屬性來標識關聯的主類
好像您錯過了將Main-Class屬性添加到用於創建JAr的清單文件中一樣,http://www.skylit.com/javamethods/faqs/createjar.html可能會有所幫助
默認情況下,jar無法執行
Java歸檔文件經常被用作庫,其中jar
格式將代碼壓縮到一個文件夾中。 此類代碼通常不作為應用程序運行(獨立),但是有一項規定,可以通過清單文件將jar文件轉換為可執行應用程序
只需創建一個Manifest文件,指示哪個類包含“ main”方法,以使您的jar可執行並將Manifest包含在您的.jar中
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.