默认打包生成的jar是不能直接运行的,因为带有main方法的信息不会添加到mainifest中,需要借助maven-shade-plugin



  1. <project>
  2. ...
  3. <build>
  4. <plugins>
  5. <plugin>
  6. <groupId>org.apache.maven.plugins</groupId>
  7. <artifactId>maven-shade-plugin</artifactId>
  8. <version>2.0</version>
  9. <configuration>
  10. <transformers>
  11. <transformer implementation = "org.apache.maven.plugins.shade.resource.MainifestResourceTransformer">
  12. <mainClass>com.xun.pf.sayHello.HelloWorld</mainClass>
  13. </transformer>
  14. </transformers>
  15. </configuration>
  16. <executions>
  17. <execution>
  18. <phase>package</phase>
  19. <goals>
  20. <goal>shade</goal>
  21. </goals>
  22. </execution>
  23. </executions>
  24. </plugin>
  25. </plugins>
  26. </build>
  27. ...
  28. </project>

com.xun.pf.sayHello.HelloWorld为包含main方法的class就可以使用Java -jar xxx.jar执行了参考:徐晓斌
原文地址:https://blog.csdn.net/xun_2008/article/details/16832151

maven配置生成可执行的jar:maven-shade-plugin的更多相关文章

  1. intellij idea maven 工程生成可执行的jar

    新建maven 工程 写hello world 修改pom.xml 文件 <build> <pluginManagement> <plugins> <plug ...

  2. Maven 生成可执行的jar包

    maven 默认打包生成的 jar 包是不能够直接运行的,因为带有 main 方法的类信息不会添加到 manifest 中,即打开 jar 文件中的 META-INF/MANIFEST.MF 文件,将 ...

  3. 【Maven】maven打包生成可执行jar文件

    http://blog.csdn.net/u013177446/article/details/53944424 ******************************************* ...

  4. 使用Mavne生成可以执行的jar文件

    到目前为之,还没有运行HelloWorld的项目,不要忘了HelloWorld类可是有一个main方法的.使用mvn clean install命令默认生成的jar 包是不能直接运行的.因为带有mai ...

  5. Spark之路 --- Scala IDE Maven配置(使用开源中国的Maven库)和使用

    为什么要使用Maven 摘自百度百科的介绍 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告和文档的软件项目管理工具.Maven 除了以程序构建能力为特色之外,还提 ...

  6. 用命令行编译java并生成可执行的jar包

    用命令行编译java并生成可执行的jar包 1.编写源代码. 编写源文件:CardLayoutDemo.java并保存,例如:I:\myApp\CardLayoutDemo.java.程序结构如下: ...

  7. java中如何生成可执行的jar文件

    java中如何生成可执行的jar文件 最简单的方法就是: jar -cfe Card.jar CardLayoutDemo CardLayoutDemo$1.class CardLayoutDemo$ ...

  8. maven 生成可执行的jar文件

    微服务的热潮,慢慢讲jar引入了码农的视线之中,从传统web开发中过来的人面对这个东西也算是个新鲜事了,接下来聊一聊在maven下生成可运行jar的那些事. Maven可以使用mvn package指 ...

  9. maven插件生成可执行jar包

    <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-assem ...

随机推荐

  1. 【Python】学习笔记一:Hello world

    前言 在我看来,无论我们学习什么语言第一个学习的估计都是Hello world,那么接下来就从Hello world说起! 编写代码 我在本机上已经安装了pycharm,所以我所编辑的代码都是在pyc ...

  2. winform Timer控件的使用

    private void button1_Click(object sender, EventArgs e){ Timer timer1 = new Timer(); timer1.Interval ...

  3. CRC32算法C#中的实现

    代码如下: using System; using System.Collections.Generic; using System.Text; using System.IO; namespace ...

  4. UVA 1025 -- A Spy in the Metro (DP)

     UVA 1025 -- A Spy in the Metro  题意:  一个间谍要从第一个车站到第n个车站去会见另一个,在是期间有n个车站,有来回的车站,让你在时间T内时到达n,并且等车时间最短, ...

  5. Servlet请求参数的方式

    今天整理了以下几种常用的Servlet请求参数的方式,下面简单地介绍 1)getParameter(String key)返回一个字符串,获得name和key 一样的表单控件的数据,如果有重复的nam ...

  6. c# 单元测试 ,对静态方法(static)和私有方法(private) 进行单元测试

    利用反射: /// <summary> /// 调用静态方法 /// </summary>akf /// <param name="t">类全名 ...

  7. 转:BIOS的恢复技术之Top Swap的原理应用

    原文地址:https://baijiahao.baidu.com/s?id=1628248717252216590&wfr=spider&for=pc 一版又一版的BIOS推送,目的无 ...

  8. 建立WIN32 DLL,并使用静态加载和动态加载

    新建工程,选择win32 dll 编写.cpp(或.c) MyDll.cpp #include "windows.h" BOOL APIENTRY DllMain(HANDLE h ...

  9. javascript - 事件详解(阻止事件冒泡+阻止事件行为)

    一.事件流 1.事件流 描述的是在页面中接受事件的顺序 2.事件冒泡 由最具体的元素接收,然后逐级向上传播至最不具体的元素的节点 (最具体 –> 最不具体) 3.事件捕获 最不具体的节点先接收事 ...

  10. Jmeter(十一)测试监听

    性能测试监控的主要任务是获取运行状态收集测试结果, 再对测试结果进行分析. 测试结果有事务响应时间,吞吐量及服务器硬件性能 , 数据库性能状态等等. Jmeter对长时间执行测试计划使用的监听器主要是 ...