默认打包生成的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. 51Nod 1005 有负数的高精度加法

    51Nod是个好地方啊 题意 51Nod基础题第二题,高精度加法,可能有负数. 解题 如果按照一般的高精度,我们发现要分情况讨论,还要写高精度加法和减法,代码实现有点烦.而初中数学里说,省略加号的和. ...

  2. iview之avatar组件

    avatar组件是一个获取网络路径图片的组件 它再vue中使用的话build时不会被打包,路径仍然为原来的路径 所以相对路径不会有效 如下: <Avatar style="margin ...

  3. MySQL格式化小数点为百分号并保留2为小数

    #colname为字段名字,CONCAT的作用是把小数点转成百分号,TRUNCATE的作用是保留百分号的小数点成几位 SELECT CONCAT(TRUNCATE(colname*100,2),'%' ...

  4. 新建Spring boot 启动报错 Failed to auto-configure a DataSource

    今天学习springboot,使用idea创建项目.在选择组件时添加了mysq 然后在第一次启动的时候启动报错,错误信息如下: ***************************APPLICATI ...

  5. uswgi

    1.安装uwsgi注意: 1)在系统环境安装,非虚拟环境 2)使用对应python版本安装 3)要先安装python开发包 ###sudo apt-get install python3.6-dev ...

  6. Demo:servlet实现图片的上传

    一个简单的servlet例子,实现图片的上传功能,上传的图片给 ?HttpServletResponse 对象 public class BackGroundLogoServlet extends H ...

  7. legend3---4、lavarel中session使用注意

    legend3---4.lavarel中session使用注意 一.总结 一句话总结: session('key',$value)不是存值,是设置默认值,session(['key'=>$val ...

  8. spark 笔记 12: Executor,task最后的归宿

    spark的Executor是执行task的容器.和java的executor概念类似. ===================start executor runs task============ ...

  9. Upload 上传

    通过点击或者拖拽上传文件 点击上传 通过 slot 你可以传入自定义的上传按钮类型和文字提示.可通过设置limit和on-exceed来限制上传文件的个数和定义超出限制时的行为.可通过设置before ...

  10. 直连网(directly-connected networks)个数的计算

    直连网分为两种,point-to-point link和multiple access link, 如图: 对一个网络数直连网个数时,以上两种link都要计算.例子如下: 1. How many di ...