如何将多个Java源文件打包成jar包

如何将多个Java源文件打包成jar包

0.需要特别注意的事情是,用于打包的jdk版本,要与IDE所使用的jdk版本一致,否则会出现UnsupportedClassVersionError unsupported major.minor version 51.0 unable to load class [duplicate]

错误原因解决建议方案可参见:

(1)http://stackoverflow.com/questions/8982730/unsupportedclassversionerror-unsupported-major-minor-version-51-0-unable-to-load

(2)我自己采用的一个更稳妥的方案就是,直接用IDE去打JAR包,教程参见:http://www.cnblogs.com/xdp-gacl/p/4136303.html

-----------------------------------------------分割线下方的是在确保jdk版本一致的情况下使用cmd,命令行打包的方式。------


1.在存放Java源文件的文件夹下对所有源文件进行编译生成 .class 文件

如:f:JSON-java-master>javac *.java


(注意:多个类互相引用的时候,要一起编译,不然不到
应该

命令行里输入

(1)javac sztz/manage/*.java sztz/database/DBConnect.java sztz/man/*.java sztz/tool/Str.java



或(2)f:JSON-java-master>javac *.java

带包名的编译方法:java -d 编译后存放路径(当前路径为“.”) *.java 将自动产生包名所指定的目录


2.对生成的多个.class文件打包成jar包

如:f:json>jar cvf json.jar *

(注意:

(1) 把零散的.class文件打包为jar:(不是在eclipse里"导出"为jar包)

cd进入要打成jar包的class文件所在目录:jar cvf [生成jar的名称.jar] [列出class文件] //若有多个用空格隔开
例1:操作零散的单个或几个class文件:
cd bin
jar cvf ipaddress.jar com/cn/lbs/IPSeeker.class com/cn/lbs/SplitAddress.class
之后会在bin目录下生成ipaddress.jar,不过这里jar下面没有com.csdn.ipaddress包,因为之前没有创建目录
(2) 例2:把一个文件夹下面所有的class文件打成jar包
(这里让生成的jar目录下有com.csdn.ipaddress包,于是在总的文件夹ipaddress下新建文件夹嵌套comcsdnipaddress,里面放上需要打包的.class文件)
cd回到总的文件夹ipaddress,
jar cvf ipaddress.jar * 回车


参考资料:


1.java编译运行相关http://blog.sina.com.cn/s/blog_4560e10e0101cthv.html

2.java命令行编译运行、打包jar http://www.voidcn.com/article/p-hcelunkt-zs.html






免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部