用myeclipse打jar包,使其包含依赖jar包的指向
程序员文章站
2022-05-24 18:51:57
...
第一步:建目录,将依赖JAR包都拷贝到该目录下,比如我的这个测试工程,依赖两个JAR包:classes12.jar和log4j-1.2.14.jar
第二步:写程序,先写也没问题,我只写了一个类,带main函数,包名是test:test.Main
Main.java
package test; import org.apache.log4j.Logger; public class Main { private Logger log = Logger.getLogger("R"); public Main(){ log.debug("********************"); } public static void main(String[] args) { Main m = new Main(); } }以上示例程序中并没有使用classes12.jar,但依赖classes12.jar只是为了演示多个jar包的依赖添加
第三步:
按图示开始打jar包:
之后生成的MANIFEST.MF文件只有两行:
Manifest-Version: 1.0
Main-Class: test.Main
这时需要手动修改这个文件,改为:
Manifest-Version: 1.0
Class-Path: classes12.jar log4j-1.2.14.jar
Main-Class: test.Main
注意加了一行,在Class-Path这一行中,写入了依赖JAR包的名称,用空格分隔,如果有子目录的话就写相对目录,相对是相对于批处理文件的相对路径
然后重新打包导出JAR,见图:
以后再打这个jar包的时候就不需要再修改MANIFEST.MF了,但如果又添加了依赖jar包,只需要在这个文件内手动把依赖jar包名写进去保存就可以了,执行的jar包名不用写
第四步:写批处理
文件名:run.bat
内容:
java -jar TestJar.jar
最终目录结构:
第五步:测试
运行cmd,依次执行:
d:
cd temp/TestJar
run
接下来就不用说了