jars collection
http://www.docjar.com/
http://peng4602.iteye.com/blog/243495#comments
jar包查询网站 非常好用!
http://zgqhyh.iteye.com/blog/558184
http://jarvana.com/jarvana/ 可直接查看源码,下载各个版本的jar包等,强力推荐
http://www.findjar.com/index.x 这个没有上一个好,不过也不错了
DOS jdk1.6
当前目录所有文件打包为singleton.jar
D:\workspace\java\src\com\javaeye\lindows\design23>jar cvf singleton.jar .
或
D:\workspace\java\src\com\javaeye\lindows\design23>jar cvf singleton.jar ./
或
D:\workspace\java\src\com\javaeye\lindows\design23>jar cvf singleton.jar ./*.*
或
D:\workspace\java\src\com\javaeye\lindows\design23>jar cvf singleton.jar .\*.*
注:jar cvf singleton.jar .\ 这种方式打包解压数据未丢失但都批量更改为.\*.java的文件和其他
当前目录所有文件打包为 x.war
F:\s*****\b2c\b2c_src>jar cvf x.war .
或
F:\s*****\b2c\b2c_src>jar cvf x.war ./
或
F:\s*****\b2c\b2c_src>jar cvf x.war ./*.*
1.jar文件打包
假设需要打包的文件如下:
classes\com\albertsong\MyApp.class
classes\com\albertsong\Aaaa.class
classes\com\albertsong\util\Bbbb.class
(其中MyApp包含main函数)
建一个mymanifest.mf 文件,内容如下:
Main-Class: com.albertsong.MyApp
建一个myjar.bat文件,内容如下:
set JAVA_HOME=C:\jsdk1.5.0_09
set PATH=%JAVA_HOME%\bin
set CLASSPATH=%JAVA_HOME%\lib\tools.jar;
jar cvfm MyApp.jar mymanifest.mf -C classes .
这两个文件都放到和classes同一个目录,即目录结构象下面一样
MyApp\classes\com\albertsong\MyApp.class
MyApp\classes\com\albertsong\Aaaa.class
MyApp\classes\com\albertsong\util\Bbbb.class
MyApp\mymanifest.mf
MyApp\myjar.bat
然后点myjar.bat这个文件执行就可以了:)
2.执行jar文件
建一个目录MyApp/release。
将生成的MyApp.jar复制到这个目录。
在这个目录里新建一个批处理文件run.bat,内容如下:
set JAVA_HOME=C:\jsdk1.5.0_09
set PATH=%JAVA_HOME%\bin
set CLASSPATH=%JAVA_HOME%\lib\tools.jar;
javaw -jar MyApp.jar
3.其它
1)jar cvfm MyApp.jar mymanifest.mf -C classes .
这行命令,最后的. 一定不能掉 ,jar命令给出的帮助的例子是
jar cvfm classes.jar mymanifest -C foo/ .
但是在windows下应该改成
jar cvfm classes.jar mymanifest -C foo\ .
或者
jar cvfm classes.jar mymanifest -C foo .
2)如果应用程序比较大,可能会用到其它的库,这时可以在release目录下建一个lib
然后在run.bat的CLASSPATH中添加用到的库。
set CLASSPATH=%JAVA_HOME%\lib\tools.jar;lib\ccc.jar;lib\ddd.jar;
3)如果要指定java程序使用的内存,这样
javaw -ms100m -mx256m -jar MyApp.jar
上面指定了使用最小100M最大256M内存。
4)如果main函数要带参数
javaw -ms100m -mx256m -jar MyApp.jar arg1 arg2
5)如果不能在控制台看到有关信息,可以用java来执行jar包
java -ms100m -mx256m -jar MyApp.jar arg1 arg2
javaw在后台执行。
6)如果bat文件一闪而过,看不到输出,可以在文件最后一行加上pause,最好的是通过cmd.exe来运行run.bat。
后记:
老早以前写过一个,后来丢失了,今天因为忘了点号和反斜杠的问题,又浪费不少时间。