java 中使用maven shade plugin 打可执行Jar包

 更新时间:2017年05月14日 10:25:06   作者:蓝色空间  
这篇文章主要介绍了java 中使用maven shade plugin 打可执行Jar包的相关资料,需要的朋友可以参考下

java 中使用maven shade plugin 打可执行Jar包

eclipse里有一个功能叫做“打可执行(runnable) jar包”, 用这个功能可以把一个工程自身和所有依赖包打成一个fat jar,并且指定Main方法,这样直接使用java jar xxx.jar就可以运行代码了。

但是在不使用eclipse的时候呢?其实,借助maven,我们很容易实现同样功能。maven提供了一个shade plugin,可以用来打fat jar, 同时也提供了指定main方法的功能。

<project>
 ...
 <build>
  <plugins>
   <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>3.0.0</version>
    <executions>
     <execution>
      <phase>package</phase>
      <goals>
       <goal>shade</goal>
      </goals>
      <configuration>
       <transformers>
        <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
         <mainClass>org.sonatype.haven.HavenCli</mainClass>
        </transformer>
       </transformers>
      </configuration>
     </execution>
    </executions>
   </plugin>
  </plugins>
 </build>
 ...
</project>

然后在用maven打包的时候就可以打出直接可运行的包了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • java中xml和对象之间的互相转换方法

    java中xml和对象之间的互相转换方法

    在java开发中我们经常会遇到Xml与对象互相转换的情况,这篇文章主要给大家介绍了关于java中xml和对象之间的互相转换方法,文中给出了两种解决方法,需要的朋友可以参考下
    2023-06-06
  • 分布式难题ElasticSearch解决大数据量检索面试

    分布式难题ElasticSearch解决大数据量检索面试

    这篇文章主要为大家介绍了分布式面试难题,ElasticSearch解决大数据量检索的问题分析回答,让面试官无话可说,帮助大家实现面试开薪自由
    2022-03-03
  • SpringBoot SSE服务端主动推送事件的实现

    SpringBoot SSE服务端主动推送事件的实现

    本文主要介绍了SpringBoot SSE服务端主动推送事件的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • 用java实现学生信息管理系统

    用java实现学生信息管理系统

    这篇文章主要为大家详细介绍了java实现学生信息管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • Java中检查值是否存在于数组中的4种详细方法

    Java中检查值是否存在于数组中的4种详细方法

    这篇文章主要给大家介绍了关于Java中检查值是否存在于数组中的4种详细方法,相信大家在操作Java的时候经常会要检查一个数组(无序)是否包含一个特定的值,需要的朋友可以参考下
    2023-08-08
  • Java根据开始时间和结束时间及周几计算日期的示例代码

    Java根据开始时间和结束时间及周几计算日期的示例代码

    在Java 7中,java.time包不存在,所以我们需要使用java.util.Calendar和java.util.Date类来实现类似的功能,这篇文章主要介绍了Java根据开始时间和结束时间及周几计算出日期的示例代码,需要的朋友可以参考下
    2024-06-06
  • SpringBoot静态资源CSS等修改后再运行无效的解决

    SpringBoot静态资源CSS等修改后再运行无效的解决

    这篇文章主要介绍了SpringBoot静态资源CSS等修改后再运行无效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 使用IDEA如何打包发布SpringBoot并部署到云服务器

    使用IDEA如何打包发布SpringBoot并部署到云服务器

    这篇文章主要介绍了使用IDEA如何打包发布SpringBoot并部署到云服务器问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • SpringBoot中@Scheduled()注解以及cron表达式详解

    SpringBoot中@Scheduled()注解以及cron表达式详解

    这篇文章主要介绍了SpringBoot中@Scheduled()注解以及cron表达式详解,@Scheduled注解是Spring Boot提供的用于定时任务控制的注解,主要用于控制任务在某个指定时间执行,或者每隔一段时间执行,需要的朋友可以参考下
    2023-08-08
  • Spring Boot中的属性绑定的实现

    Spring Boot中的属性绑定的实现

    这篇文章主要介绍了Spring Boot中的属性绑定的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04

最新评论