簡體   English   中英

從命令行創建JAR文件時,為什么會得到這個奇怪的輸出?

[英]Why am I getting this weird output when creating a JAR file from commandline?

我在文件夾“ D:\\ Workspaces \\ Workspace \\將程序打包到JAR Files \\ src”中編寫了一個HelloWorld類。 按照本教程 ,我試圖創建一個包含此HelloWorld.class文件的Jar文件。 因此,我在src目錄中打開了cmd並執行了以下命令。

jar cv HelloWorld.jar HelloWorld.class

我懂了:

D:\Workspaces\Workspace\Packaging Programs i
nto JAR Files\src>jar cv HelloWorld.jar HelloWorld.class
HelloWorld.jar : no such file or directory
 δ╗£H                    ♦ META-INF/■╩  ♥     ☻       PK♥ δ╗£H            ¶   ME
K-*╬╠╧│R0╘3ασr.JM,IM╤u¬♦        ÿδ↓─¢[*h°↨%&τñ*8τ↨§Σ↨%û òk≥r±r☺ P╖îqëC   D   PK♥
 c╖£H            ►   HelloWorld.classmPMK├@►}█|515╡╡⌡│P☼B¶1ŧ/éx(*D⌠α)iù▓%╔JL¶⌂û
▲¶<°♥ⁿQΓl¶é╨à▌Ö}≤▐╠█²·■°♦päü♥‼₧ì6VÜΦ8Φb╒B╧Bƒ┴<▬Ö(N↑4⌂∩åA?òS╬αìE╞/╩4µ∙u¶'äΦi$2å╛⌂
7₧GÅQÉD┘ï\d│æ↕:í,≤      ?‼è∞¥≤$æ╖2Oªçèφ┬B╙┬Üïul0┤¬≥┴≡I◄v,l║╪┬6⌡¿e♀φz╠e<τôΓ▼¶>?¶<
┌d∟♀6e♥èîó▒*♫÷B ↓ª╙¼@EYé√G▌%⌐BφW4:┌←⌠ÜεT]5Ω¬‼╥¬ª,* P♥   èY!☺  ⌐☺  PK δ╗£H    ☻
         ♦               META-INF/■╩  PK☺☻¶ δ╗£H╖îqëC   D   ¶             =   ME
TA-INF/MANIFEST.MFPK☺☻¶ c╖£H♥   èY!☺  ⌐☺  ►             ┬   HelloWorld.classPK♣♠
    ♥ ♥ ╗   !☻
D:\Workspaces\Workspace\Packaging Programs i
nto JAR Files\src>

為什么會這樣呢? 我做錯了嗎?

您缺少-f參數,該參數告訴JAR工具輸出到文件而不是控制台:

jar cvf HelloWorld.jar HelloWorld.class

更新:

通過告訴JAR將輸出發送到標准輸出,然后重定向到所需的實際JAR文件,可以在沒有 -f標志的情況下獲得與上述相同的結果。 因此,以下將完成與上述相同的操作:

jar cv HelloWorld.class > HelloWorld.jar

應當注意,將JAR的輸出傳遞到輸出文件是OS的功能,而不是Java的功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM