在VSCode中将Maven项目打包成jar文件
mvn clean install package -Dmaven.test.skip=true
直接打包,不打包依赖包,
仅打包出项目中的代码到JAR包中。在POM中添加如下plugin即可,随后执行maven install
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target></configuration></plugin>
将依赖JAR包输出到lib目录方式
将项目中的JAR包的依赖包输出到指定的目录下,修改outputDirectory配置,如下面的${project.build.directory}/lib。如想将打包好的JAR包可以通过命令直接运行,如java -jar xx.jar,还需要制定manifest配置的classpathPrefix与上面配置的相对应,如上面把依赖JAR包输出到了lib,则这里的classpathPrefix也应指定为lib/;同时,并指定出程序的入口类,在配置mainClass节点中配好入口类的全类名。
这种打包方式对于JAVA项目是通用的,不管是不是springBoot的项目还是传统的JAVA项目,都可行。
<plugins><!-- java编译插件 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.7</source><target>1.7</target><encoding>UTF-8</encoding></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><configuration><archive><manifest><addClasspath>true</addClasspath><classpathPrefix>lib/</classpathPrefix><mainClass>com.yourpakagename.mainClassName</mainClass></manifest></archive></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId><executions><execution><id>copy</id><phase>install</phase><goals><goal>copy-dependencies</goal></goals><configuration><outputDirectory>${project.build.directory}/lib</outputDirectory></configuration></execution></executions></plugin></plugins>
有时为了方便,可以把classpath初在当前目录上,默认的classpath会在jar包内,可以在Main方法配置后加上manifestEntries配置,指定classpath,如:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <classesDirectory>target/classes/</classesDirectory> <archive> <manifest> <!-- 主函数的入口 --> <mainClass>com.yourpakagename.mainClassName</mainClass> <!-- 打包时 MANIFEST.MF文件不记录的时间戳版本 --> <useUniqueVersions>false</useUniqueVersions> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> </manifest> <manifestEntries> <Class-Path>.</Class-Path> </manifestEntries> </archive> </configuration> </plugin>
将项目依赖包和项目打为一个包
这种方式打包会将项目中的依赖包和项目代码都打为一个JAR包,其配置如下:
<plugin><groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assembly-plugin</artifactId> <version>2.5.5</version> <configuration> <archive> <manifest> <mainClass>com.xxg.Main</mainClass> </manifest> </archive> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> </plugin>
在VSCode中将Maven项目打包成jar文件相关推荐
- 在IDEA中将SpringBoot项目打包成jar包的方法 不要用 在上面有可以用的
在IDEA中将SpringBoot项目打包成jar包的方法 2018年03月07日 10:43:52 叶叶叶叶大爷 阅读数 71375 版权声明: https://blog.csdn.net/qq_3 ...
- IDEA MAVEN项目打包成jar包的两种简单方式
IDEA MAVEN项目打包成jar包的两种简单方式 准备了两个打包方法 1.IEDA自带打包方法 2.用Maven插件maven-shade-plugin打包 IDEA自带打包 适用于任何打包,稍微 ...
- java maven 打包jar_maven项目如何打jar包?eclipse将maven项目打包成jar包方法
下面的内容是要给大家介绍eclipse将maven项目打包成jar包的方法,一起来看看整个过程是怎样的吧,希望对你的编程之路可以有所帮助哦. 利用eclipse把项目打包成jar,放入服务器执行. 1 ...
- 记一次maven项目打包成exe文件过程
记一次maven项目打包成exe文件过程 步骤 (网上很多) 将java代码在idea中打包成可执行的Jar包 通过exe4j软件打包成exe文件 问题 打包成jar包要么选择IDEA自身打包要么用m ...
- MyEclipse将Java项目打包成jar文件的三种方法
2019独角兽企业重金招聘Python工程师标准>>> 方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 "MANIFEST.MF", 由于 ...
- myeclipse打包java文件_MyEclipse将Java项目打包成jar文件的三种方法
方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 "MANIFEST.MF", 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFE ...
- Eclipse将引用了第三方jar包的Java项目打包成jar文件
第一步:建议手动 Eclipse插件fatjar 安装方法:1:下载地址:http://downloads.sourceforge.net/fjep/net.sf.fjep.fatjar_0.0.27 ...
- maven项目打包成zip文件
1.添加Maven插件 pom.xml <!--maven自定义打包插件--><plugin><artifactId>maven-assembly-plugin&l ...
- 将IDEA MAVEN项目打包成jar包的通用方法
1.找到左上角File -> Project Structure,点击(中文:文件 -> 项目结构) 2. 在弹出的界面中,点击Artifacts(中文:工件),点击内置页面的左上角的+号 ...
最新文章
- 使用Redis分布式锁处理并发,解决超卖问题
- go中使用type关键字来定义类型别名
- oracle快速备份全库,做了两次rman 全库备份,如何快速删除第一次的备份?
- libsvm java 调用说明
- 终于有人把Elasticsearch原理讲明白了!
- springboot使用thymeleaf完成数据的页面展示
- [转载]Android系统上(mv不可用)cp命令的替代方法
- UVALive6336 HDU4450 Draw Something【水题】
- 洛谷p3392计算机教育新社会,洛谷-P3392 涂国旗
- 中国水稻大省创新大米销售模式 启动2019首场拍卖
- 发现新的预言梦种类:预言梦投射
- 物联网技术对于智慧生活24小时改变
- 专利申请书的书写和cpc客户端的使用
- 用VC6.0实现上位机串口通信
- 百度 bos php,Thinkphp5对接百度云对象存储 BOS(代码示例)
- IP地址-子网掩码-缺省网关
- java.beans.transient_JavaBeans程序开发
- SCU - 4572 醉后不知天在水,满船清梦压星河【思维】
- react---收藏的点击和取消(刷新还会存在)--demo
- js中[object,object]是什么,怎么取值