Maven工程打jar包的N种方式 您所在的位置:网站首页 奥迪q5火花塞要多少钱一个 Maven工程打jar包的N种方式

Maven工程打jar包的N种方式

2024-05-25 18:15| 来源: 网络整理| 查看: 265

Maven工程打jar包 一、IDEA自带打包插件二、maven插件打包2.1 制作瘦包(直接打包,不打包依赖包)2.2 制作瘦包和依赖包(相互分离)2.3 制作胖包(项目依赖包和项目打为一个包)2.4 制作胖包(transform部分自定义) 三、SpringBoot项目打包四、Scala项目打包五、groovy项目打包

一、IDEA自带打包插件

内容:此种方式可以自己选择制作胖包或者瘦包,但推荐此种方式制作瘦包。 输出:输出目录在out目录下 流程步骤:

第一步: 依次选择 file->projecct structure->artifacts->点击+ (选择jar)->选择 from module with dependencies 在这里插入图片描述第二步:弹出窗口中指定Main Class,是否选择依赖jar包,是否包含测试。(尽量不选依赖包,防止依赖包选择不全) 在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述第三步:点击Build–>Build Artifacts–>选择bulid 二、maven插件打包

输出:输出目录在target目录下

2.1 制作瘦包(直接打包,不打包依赖包)

内容:仅打包出项目中的代码到JAR包中。 方式:在pom.xml中添加如下plugin; 随后执行maven install

org.apache.maven.plugins maven-compiler-plugin 指定版本 1.8 1.8 UTF-8 2.2 制作瘦包和依赖包(相互分离)

内容:将依赖JAR包输出到lib目录方式(打包方式对于JAVA项目是通用的) 将项目中的JAR包的依赖包输出到指定的目录下,修改outputDirectory配置,如下面的${project.build.directory}/lib。 方式:

pom.xml的build>plugins中添加如下配置。点击maven project(右边栏)->选择Lifecycle->点击package打包 注意:如果想将打包好的JAR包通过命令直接运行,如java -jar xx.jar。需要制定manifest配置的classpathPrefix与上面配置的相对应。如上面把依赖JAR包输出到了lib,则这里的classpathPrefix也应指定为lib/;同时,并指定出程序的入口类,在配置mainClass节点中配好入口类的全类名。 org.apache.maven.plugins maven-compiler-plugin 1.8 1.8 UTF-8 org.apache.maven.plugins maven-jar-plugin true lib/ com.yourpakagename.mainClassName org.apache.maven.plugins maven-dependency-plugin copy install copy-dependencies ${project.build.directory}/lib

注意:默认的classpath会在jar包内。为了方便,可以在Main方法配置后加上manifestEntries配置,指定classpath。

org.apache.maven.plugins maven-jar-plugin target/classes/ com.yourpakagename.mainClassName false true lib/ . 2.3 制作胖包(项目依赖包和项目打为一个包)

内容:将项目中的依赖包和项目代码都打为一个JAR包 方式:

pom.xml的build>plugins中添加如下配置;点击maven project(右边栏)->选择Plugins->选择assembly->点击assembly:assembly 注意:1. 针对传统的JAVA项目打包; 2. 打包指令为插件的assembly命令,尽量不用package指令。 org.apache.maven.plugins maven-assembly-plugin 2.5.5 com.xxg.Main jar-with-dependencies 2.4 制作胖包(transform部分自定义) org.apache.maven.plugins maven-shade-plugin 2.4.3 package shade *:* META-INF/*.SF META-INF/*.DSA META-INF/*.RSA META-INF/spring.handlers META-INF/spring.schemas META-INF/spring.tooling com.xxx.xxxInvoke true true 三、SpringBoot项目打包

内容:将当前项目里所有依赖包和当前项目的源码都打成一个JAR包,同时还会将没有依赖包的JAR包也打出来,以.original保存 方式:

在pom.xml的build>plugins中加入如下配置点击maven project(右边栏)->选择Lifecycle->点击package或install打包 org.springframework.boot spring-boot-maven-plugin 四、Scala项目打包

方式:

在pom.xml的build>plugins中加入如下配置点击maven project(右边栏)->选择Lifecycle->点击package或install打包 org.scala-tools maven-scala-plugin compile testCompile ${scala.version} -target:jvm-1.5 五、groovy项目打包

方式:

在pom.xml的build>plugins中加入如下配置点击maven project(右边栏)->选择Lifecycle->点击package或install打包 org.codehaus.gmavenplus gmavenplus-plugin 1.2 addSources addStubSources compile execute


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有