1.打包:
-
命令: javac -d <目標(biāo)路徑> 源文件
如果一個(gè)java源文件里有package打包,那么先為其打包,生成包層次目錄
package com.wxhl.test;
public class Test{
public static void main(String args[]){
System.out.println("你好這個(gè)世界");
}
}
例:javac -d ./ Test.java
2.打jar包:
-
命令: jar cvf jar包名 源目錄
一般是直接給源文件所在包打jar包(com/wxhl/test/Test.java)
例:jar cvf Test.jar com
-
修改配置文件(如果是圖形界面,雙擊可運(yùn)行的情況下需要設(shè)置):
用壓縮軟件把xx.jar文件打開,然后修改里面的"MANIFEST.MF"文件并在其尾行添加該jar包的"主類"
注意:類名應(yīng)該是完整類名(包名+類名)
如:
Manifest-Version: 1.0
Created-By: 1.8.0_101 (Oracle Corporation)
Main-Class: com.wxhl.test.Test
-
執(zhí)行:
打好了jar包后,如果該主類是一個(gè)圖形界面類,那么雙擊jar包就可以直接運(yùn)行,否則需要使用批處理
3.jar包的導(dǎo)入與使用
- 項(xiàng)目中創(chuàng)建一個(gè)lib文件夾
- 把jar包復(fù)制進(jìn)去,然后右鍵jar包->Build Path->Add to Build Path
- 項(xiàng)目中 import com.xxjqr.xxx.*;
- 注意:要導(dǎo)入到項(xiàng)目中的jar包一定是一個(gè)包目錄打包而來
4.批處理命令(bat文件的使用)
-
批處理命令:
很多條命令放到一起執(zhí)行 -
舉例:
比如我們現(xiàn)在打好了一個(gè)jar包--Test.jar,那么怎么執(zhí)行它呢?
可以在同路徑下用命令行輸入:
set classpath=./Test.jar (設(shè)置臨時(shí)的環(huán)境變量)
java com.wxhl.test.Test (運(yùn)行包里面的某個(gè)類文件)
即可運(yùn)行,同時(shí),直接復(fù)制上面的兩條命令到一個(gè).bat文件中就完成了一個(gè)批處理文件; 是不是輕松又簡(jiǎn)單,媽媽再也不用擔(dān)心你很復(fù)雜的運(yùn)行程序了;當(dāng)然,別太傻太天真,最好是在bat文件尾行加上"pause",否則控制臺(tái)會(huì)一閃而過
注意:路徑問題千萬注意,如果用的"./",那么bat文件請(qǐng)和jar文件放在同一目錄下
補(bǔ)充:
不只是jar可以使用批處理,以上批處理操作同樣適用于zip包
zip包的處理過程
- 直接壓縮包目錄 -- (com.wxhl.test.Test)壓縮為com.zip
- 創(chuàng)建批處理文件
set classpath=./Test.zip
java com.wxhl.test.Test
pause - 運(yùn)行
jar包可以雙擊執(zhí)行(圖形界面下)可以用批處理文件執(zhí)行,也可以導(dǎo)入到項(xiàng)目中使用;
zip文件只適用于批處理文件執(zhí)行
jar包如果要導(dǎo)入到項(xiàng)目中使用,必須是包目錄打包
jar/zip包如果用批處理文件執(zhí)行,那么可以是包目錄打包也可以是若干class文件打包而成,但不能是若干class文件在一個(gè)文件夾中打包而成,因?yàn)閳?zhí)行命令"java A/Test"怎么執(zhí)行?(但是不推薦這么干,現(xiàn)在幾乎都是帶包的)
打包:
jar包 :jar cvf Test.jar Test1.class Test2.class
zip包 :選中幾個(gè)class文件->壓縮為Test.zip
** 批處理文件:***
set classpath=./Test.zip
java Test1
pause