IDEA中maven项目打包生成可执行jar

新建maven项目,编写Main方法类,略

其中build节点配置如下

<build>
    <plugins>
      <plugin>
        <groupId>org.scala-tools</groupId>
        <artifactId>maven-scala-plugin</artifactId>
        <version>2.15.2</version>
        <executions>
          <execution>
            <goals>
              <goal>compile</goal>
              <goal>testCompile</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.6.0</version>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.3</version>
        <configuration>
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
        </configuration>
      </plugin>

      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.19</version>
        <configuration>
          <skip>true</skip>
        </configuration>
      </plugin>

      <plugin><!--包含class目录资源文件-->
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.8</version>
        <executions>
          <execution>
            <id>add-resource</id>
            <phase>generate-resources</phase>
            <goals>
              <goal>add-resource</goal>
            </goals>
            <configuration>
              <resources>
                <resource>
                  <directory>src/main/java</directory>
                  <includes>
                    <include>com/netmarch/*.txt</include>
                  </includes>
                </resource>
              </resources>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin><!--将第三方的jar文件打包进来-->
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>2.4.3</version>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <filters>
                <filter>
                  <artifact>*:*</artifact>
                  <excludes>
                    <exclude>META-INF/*.SF</exclude>
                    <exclude>META-INF/*.DSA</exclude>
                    <exclude>META-INF/*.RSA</exclude>
                  </excludes>
                </filter>
              </filters>
              <transformers>
                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                  <mainClass>com.xxx.App</mainClass><!--main方法所在类-->
                </transformer>
              </transformers>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
    <defaultGoal>package</defaultGoal>
  </build>

最终 生成带依赖jar和不带依赖jar的两个可执行jar

参考来源:

https://my.oschina.net/u/2331760/blog/1913428

https://blog.csdn.net/u012369535/article/details/90546987

原文地址:https://www.cnblogs.com/passedbylove/p/12196155.html

时间: 2024-10-09 06:06:06

IDEA中maven项目打包生成可执行jar的相关文章

spring maven项目打包为可执行jar包

用assembly打包一直报错: shangyanshuodeMacBook-Pro:target shangyanshuo$ java -jar jobscrawler-1.0-SNAPSHOT-jar-with-dependencies.jar 17-04-30 15:52:43,337 INFO org.springframework.context.support.ClassPathXmlApplicationContext(AbstractApplicationContext.java

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

http://blog.csdn.net/u013177446/article/details/53944424 ************************************************************ maven默认打包生成的jar是不能够直接运行的,因为在jar文件的META-INF/MANIFEST.MF文中没有Main-Class一行,为了生成可执行的jar文件,需要借助maven的插件,maven-shade-plugin,配置该插件如下: <prope

(转载)Eclipse将引用了第三方jar包的Java项目打包成可执行jar的两种方法

转载自:http://www.cnblogs.com/lanxuezaipiao/p/3291641.html 方案一:用Eclipse自带的Export功能 步骤1:准备主清单文件 "MANIFEST.MF", 由于是打包引用了第三方jar包的Java项目,故需要自定义配置文件MANIFEST.MF,在该项目下建立文件MANIFEST.MF,内容如下: Manifest-Version: 1.0 Class-Path: lib/commons-codec.jar lib/common

maven项目打包成可执行的jar

编写功能类:   编写main方法类:   在pom文件中配置:   打包方式: 1.进入到项目所在目录,例如: cd D:\workspace\riskCompensate\FileToZkUtil 2.运行命令 mvn assembly:assembly 3.在项目的target目录中可以看到如下文件 说明打包完成. 运行方式: 1.在cmd命令窗口进入target目录 cd  cd D:\workspace\riskCompensate\FileToZkUtil\target 2.输入 j

如何将maven项目打包成可执行的jar

看见网上有好几种打包的方式,但是我目前只使用了下面这种方式. 修改pom.xml文件,添加插件 <!-- 打包 --> <plugin>     <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <configuration> <archive> <manifest> <a

使用Maven把项目打包成可执行jar在Idea里

参照[https://www.cnblogs.com/acm-bingzi/p/6625303.html] 有效部分:build标签内 1 <build> 2 <plugins> 3 <plugin> 4 <groupId>org.apache.maven.plugins</groupId> 5 <artifactId>maven-compiler-plugin</artifactId> 6 <configurati

java项目打包成可执行jar用log4j将日志写在jar所在目录

开发一个demo时想将日志输出到最终打包的jar所在目录,从网上学习实验整理之后的配置如下, log4j.properties log4j.rootLogger = INFO,console,logFile log4j.appender.console=org.apache.log4j.ConsoleAppender log4j.appender.console.Threshold=INFO log4j.appender.console.ImmediateFlush=true log4j.app

详解 集成Maven Spring Mybatis项目打包生成Bat文件

在项目中有时候需要将Maven项目打包生成bat文件,单独运行.本文将详解利用maven-assembly-plugin插件实现bat文件打包. 1.首先看一下项目结构 2.配置pom.xml文件,在节点build中加入以下配置内容 <span style="font-family:KaiTi_GB2312;font-size:18px;"><resources> <resource> <directory>src/main/java&l

JAVA生成(可执行)Jar包的全面详解说明 [打包][SpringBoot][Eclipse][IDEA][Maven][Gradle][分离][可执行]

辛苦所得,转载还请注明: https://www.cnblogs.com/applerosa/p/9739007.html  得空整理了关于java 开发中,所有打包方式的 一个操作方法, 有基于IDE的,有基于构建工具的. 这里还是比较建议新手朋友尽快习惯 maven 和 gradle 等构建工具自带的打包方式. 不是说逼格高,的确是因为不依赖 IDE, 配置好 一两行命令就搞定. 离开IDE 照样出包. 大概分为这几个步骤 一.  关于Jar 包(example.jar) 的 结构/作用/使