一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

JDK中的 javac / java / jar 命令

 明天網(wǎng)吧 2015-11-23
javac [ options ] [ sourcefiles ]

options的主要選項:

-sourcepath <路徑> ?。褐付↗ava源文件的路徑。

-d <路徑>      ?。褐付ň幾g生成的類文件存放目錄,該目錄必須存在。如果沒有指定目錄,生成類文件和源文件放在同一目錄下。

-classpath <路徑>     :設(shè)定要搜索類的路徑。可以是目錄,jar文件,zip文件(里面都是class文件),會覆蓋掉所有在CLASSPATH里面的設(shè)定。

-deprecation                :輸出源程序中使用了不鼓勵使用(Deprecated)的API的具體位置。

-verbose                     :輸出編譯器運行中的詳細(xì)工作信息。

 

打開cmd命令窗口,切換目錄到test目錄下。

編譯test到classes目錄下:

javac -sourcepath ./src -d ./classes ./src/cn/pxl/*.java(源文件里面有package,必 須有這個選項)

編譯時輸出使用了Deprecated的API的位置:

javac -sourcepath ./src -d ./classes -deprecation ./src/cn/pxl/*.java

輸出詳細(xì)編譯信息:

javac -sourcepath ./src -d ./classes -verbose ./src/cn/pxl/*.java

說明:

--javac在編譯源文件時,會先對編譯源文件中關(guān)聯(lián)的其它文件。

--可以同時指定多個要編譯的源文件,用空格分隔。

--如果編譯文件已存,且源文件沒有更新,則不會重新編譯該源文件。

 

java命令

java命令用于運行Java程序,它會啟動Java虛擬機,Java虛擬機加載相關(guān)的類,然后調(diào)用主程序main()方法。

-classpath <路徑>    :設(shè)定要搜索的類的路徑,可以是目錄,jar文件,zip文件(里面都是class文件),會覆蓋掉所有的CLASSPATH的設(shè)定。多個用';’分隔。

-verbose                 :輸出運行時詳細(xì)工作信息。

-jar                        :指定可執(zhí)行的jar包。

 

在/test目錄下運行編譯后的Test程序:

java -classpath ./classes cn.pxl.Test(如果入口類有包名,一定要帶包名,不然不能執(zhí)行

 

jar命令

jar命令能夠把Java應(yīng)用打包成一個文件,這個文件的擴展名為.jar,稱為JAR文件。JAR 文件非常類似 ZIP 文件。準(zhǔn)確的說,它就是 ZIP 文件,所以叫它文件包。JAR 文件與 ZIP 文件唯一的區(qū)別就是在 JAR 文件的內(nèi)容中,包含了一個 META-INF/MANIFEST.MF 文件,這個文件是在生成 JAR 文件的時候自動創(chuàng)建的。jar命令可以打包任意文件,但通常情況下我們只把編譯后的.class文件打包成JAR包。

 

jar語法:

jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目錄] 文件名 ...
其中 {ctxu} 是 jar 命令的子命令,每次 jar 命令只能包含 ctxu 中的一個,它們分別表示: 

-c 創(chuàng)建新的 JAR 文件包 

-t 列出 JAR 文件包的內(nèi)容列表 

-x 展開 JAR 文件包的指定文件或者所有文件 

-u 更新已存在的 JAR 文件包 (添加文件到 JAR 文件包中) 

 

[vfm0M] 中的選項可以任選,也可以不選,它們是 jar 命令的選項參數(shù) 

-v 生成詳細(xì)報告并打印到標(biāo)準(zhǔn)輸出 

-f 指定 JAR 文件名,通常這個參數(shù)是必須的 

-m 指定需要包含的 MANIFEST 清單文件 

-0 只存儲,不壓縮,這樣產(chǎn)生的 JAR 文件包會比不用該參數(shù)產(chǎn)生的體積大,但速度更快 

-M 不產(chǎn)生所有項的清單(MANIFEST〕文件,此參數(shù)會忽略 -m 參數(shù) 

[jar-文件] 即需要生成、查看、更新或者解開的 JAR 文件包,它是 -f 參數(shù)的附屬參數(shù) 

[manifest-文件] 即 MANIFEST 清單文件,它是 -m 參數(shù)的附屬參數(shù) 

[-C 目錄] 表示轉(zhuǎn)到指定目錄下去執(zhí)行這個 jar 命令的操作。它相當(dāng)于先使用 cd 命令轉(zhuǎn)該目錄下再執(zhí)行不帶 -C 參數(shù)的 jar 命令,它只能在創(chuàng)建和更新 JAR 文件包的時候可用。   

 

把test的編譯文件打包成jar包(注意,一定要在test/classes目錄下執(zhí)行命令):

jar -cvf ../deploy/test.jar *.*

把包成功后就可以用下面java命令運行Test程序:

java -classpath ../deploy/test.jar Test

(先刪除classpath目錄下的所有文件,)把test.jar包解壓到當(dāng)前目錄(classpath)下:

java -xvf ../deploy/test.jar

解壓后,在當(dāng)前目錄下多了 META-INF/MANIFEST.MF 目錄和文件,它用于描述JAR文件的信息。這就是jar和zip的區(qū)別所在。

 

創(chuàng)建可執(zhí)行的jar包

用上訴javac命令,把Test源文件編譯到classes目錄下。在classes目錄下創(chuàng)建一個Manifest.txt文件,內(nèi)容如下:

Main-Class: cn.pxl.Test 冒號“:”與類名之間一定要有個空格,這是Java規(guī)范

(注意:要回車產(chǎn)生一個空行,這是Java規(guī)范)

以上內(nèi)容指定JAR包的主程序是cn.pxl.Test類。在classes目錄下運行如下jar命令:

jar -cvfm ../deploy/test.jar Manifest.txt *.*

這樣創(chuàng)建了一個可執(zhí)行的JAR包,用以下命令運行這個JAR包:

java -jar ../deploy/test.jar

 

 

 

 

 

 

 

 

 

 

 

 

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    99久久精品视频一区二区| 老司机精品线观看86| 久久精品国产99国产免费| 亚洲欧美日本国产不卡| 日韩欧美三级中文字幕| 国产中文字幕一二三区| 国产欧美日韩一级小黄片| 久久热在线视频免费观看| 在线观看视频国产你懂的| 国产视频福利一区二区| 亚洲精品有码中文字幕在线观看| 男人把女人操得嗷嗷叫| 色哟哟哟在线观看视频| 日本欧美视频在线观看免费 | 好吊视频有精品永久免费| 日本深夜福利在线播放| 亚洲第一区欧美日韩在线| 东京热男人的天堂久久综合| 福利一区二区视频在线| 日韩性生活视频免费在线观看 | 五月综合激情婷婷丁香| 亚洲五月婷婷中文字幕| 国产精品国产亚洲看不卡 | 富婆又大又白又丰满又紧又硬 | 青草草在线视频免费视频| 国产黄色高清内射熟女视频| 亚洲人午夜精品射精日韩| 91播色在线免费播放| 好吊色免费在线观看视频| 九九热这里只有精品视频| 玩弄人妻少妇一区二区桃花| 日韩国产亚洲一区二区三区| av一区二区三区天堂| 玩弄人妻少妇一区二区桃花| 国产内射一级一片内射高清视频| 手机在线不卡国产视频| 国产精品免费视频视频| 亚洲欧美日本成人在线| 亚洲天堂久久精品成人| 91偷拍与自偷拍精品| 国产日韩欧美专区一区|