Idea 三种打包方式
假设要生成的包名为A.jar ,它所依赖的jar包是B.jar,C.jar
jar包的形式
第1种打包:
打包结果为一个jar包,名称为A.jar,内部是所依赖的jar包的目录形式存放
第2种打包:
A.jar和所依赖的jar包在同一级目录下
第3种打包:
A.jar和lib文件夹同一级目录,lib包含所依赖的jar包
具体步骤
第1种
选中工程的module,F12进入Project Structure,选中Artifacts
点击From module with dependencies...
选择MainClass和MANIFEST.INF输出目录,其中MANIFEST.INF可以随便固定保存在一个地方,因为Idea要保存此配置下次打开会用到配置文件MANIFEST.INF,点击OK
弹出如下界面,点击ok即可
开始生成jar包
选择Builder->Build Artifacts...
刚才生成的jar包如下,所有依赖jar都浓缩在一个jar包下
第2种
和第一种不同的地方在于,标红的位置;点击Ok,进入一下界面
点击OK即可
生成jar包的方式和第一种相同,点击rebuild,生成结果如下
第3种
第2中生成方式,可以看到,此时的我们要执行的jar包(crawl.jar)和所依赖的jar包处于同一级目录下;通常我们希望把用lib文件把所以来的jar包包裹起来。生成步骤如下:
step1:在Create jar from Module选择存储位置
step2:如下图,创建lib
step3:右键lib->Add Copy of ->Library Files
step4:在下面弹出框中全部选择(Ctrl+a),点击OK
step5:然后删除除了lib和crawl.jar(工程本身的jar包)之外的全部依赖
step6:修改MANIFEST.INF文件,里面的jar包全部添加lib/前缀;可以用editplus工具快速替换
step7:生成jar包和前面类似,点击rebuild