201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?

网上打包的教程很多, 但是自己动手总归出现各种各样的问题,自己总结下:

由于刚刚接触JAVA,做了一个简单的java project 项目, 但是包含第三方的jar包, 结果打包的时候就出现问题了。 

主要原因是一直报“Exception in thread "main" java.lang.NoClassDefFoundError“的错误, 我一开始以为打包的jar包中应该包含第三方的JAR包,结果死活报错,原来并不是这样,运行jar包时,会根据 MANIFEST.MF中的Class-Path 的路径去读取。

好了,说下打包流程

1. 先看下文档目录和最后打包的效果

201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?_第1张图片

 

201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?_第2张图片

可以看到,打包完后,第三方jar并不在程序包内。

 

2. 配置MANIFEST.MF文件,程序打包时会用到。

  2.1 在项目下新健一个文件夹

  2.1 在该文件夹下新健一个MANIFEST.MF文件, 配置对应的属性

201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?_第3张图片

 

 

3. 打包程序, 不包含第三方JAR包

  3.1 点击 file > export

  3.2 选择 jar file, 点击next

  3.3 选择 项目打包文件,录入一个生产jar的路径(只需要项目文件, 不包含第三方jar以及MANIFEST.MF; 同时也不包含.classpath 和.project)

201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?_第4张图片

  3.4  点击选择已经存在的装配单

201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?_第5张图片

  

  3.5 一直到结束

 

4. 通过java -jar xxx.jar 来运行,  但是这里需要注意要关联第三方Jar包, 怎么关联, 会程序会通过 MANIFEST.MF中的Class-Path去寻找。所以最终要运行jar报的结构如下。

201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?_第6张图片

你可能感兴趣的:(201671010145 2016-2017《Java程序设计》 如何进行JAVA项目打包部署?)