亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

包結構的 Jar 執行錯誤

包結構的 Jar 執行錯誤

德瑪西亞99 2023-06-14 10:38:41
我正在嘗試創建一個 jar 并為包結構化 java 程序執行它。我能夠創建 jar,但我正在執行它的拋出錯誤。文件夾結構:Java_Example > pack > A.javapackage pack;  public class A{    public void msg(){System.out.println("Hello");}  }文件夾結構:Java_Example > mypack > B.javapackage mypack;  import pack.*;  class B{    public static void main(String args[]){     A obj = new A();     obj.msg();    }  }文件夾結構:Java_Example > bin > Manifest.txtMainfest-Version: 1.1Main-Class: mypack.B清單文件與換行符一起存在從命令行執行E:\Java_Example\bin>java -cp E:\Java_Example mypack.BHello創建罐子E:\Java_Example\bin>jar cvf MyJar.jar Manifest.txt E:\Java_Example\pack\A.clasE:\Java_Example\mypack\B.classadded manifestadding: Manifest.txt(in = 60) (out= 61)(deflated -1%)adding: Java_Example/pack/A.class(in = 376) (out= 268)(deflated 28%)adding: Java_Example/mypack/B.class(in = 307) (out= 237)(deflated 22%)執行罐      E:\Java_Example\bin>jar -jar MyJar.jar       Illegal option: jUsage: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...java -jar 命令執行E:\Java_Example\bin>java -jar MyJar.jarno main manifest attribute, in MyJar.jar嘗試通過給主類執行 JarE:\Java_Example\bin>jar -cp MyJar.jar mypack.BIllegal option: pUsage: jar {ctxui}[vfmn0PMe] [jar-file] [manifest-file] [entry-point] [-C dir] files ...jar -tf 輸出E:\Java_Example\bin>jar -tf MyJar.jarMETA-INF/META-INF/MANIFEST.MFManifest.txtJava_Example/pack/A.classJava_Example/mypack/B.class
查看完整描述

2 回答

?
慕姐4208626

TA貢獻1852條經驗 獲得超7個贊

您構建的 jar 文件錯誤。從基本文件夾執行此操作,并添加選項m以指定您在 jar 文件名之后立即列出清單文件(因為f在 之前m)。


E:\Java_Example>jar cvfm MyJar.jar bin\Manifest.txt pack\A.class mypack\B.class

added manifest

adding: pack/A.class(in = 376) (out= 268)(deflated 28%)

adding: mypack/B.class(in = 307) (out= 237)(deflated 22%)

如您所見,類文件現在已正確限定,并且沒有說明是adding: Manifest.txt因為該文件現在是manifest.


現在你像這樣運行它:


java -jar MyJar.jar

如果你想要 bin 文件夾中的 jar 文件,你當然只需符合以下條件:


E:\Java_Example>jar cvfm bin\MyJar.jar bin\Manifest.txt pack\A.class mypack\B.class

E:\Java_Example>java -jar bin\MyJar.jar


查看完整回答
反對 回復 2023-06-14
?
倚天杖

TA貢獻1828條經驗 獲得超3個贊

您不能使用jar命令運行 jar,java而是使用。對于您編輯的問題,清單不在正確的位置。查看 jar 提取的輸出:


E:\Java_Example\bin>jar -tf MyJar.jar

META-INF/

META-INF/MANIFEST.MF

Manifest.txt

Java_Example/pack/A.class

Java_Example/mypack/B.class

你不應該有Manifest.txt,清單是MANIFEST.MF


查看完整回答
反對 回復 2023-06-14
  • 2 回答
  • 0 關注
  • 178 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號