专栏名称: 爬蜥
目录
相关文章推荐
51好读  ›  专栏  ›  爬蜥

如何使用maven生成可以执行的jar?

爬蜥  · 掘金  ·  · 2018-06-20 02:18

正文

如何使用maven生成可以执行的jar?

不依赖任何外界包,maven如何生成可以执行的jar?

pom中不包含任何引用的情况下,只需要在pom中添加 maven-jar-plugin 即可。

解决过程

新建项目,仅包含一个main函数类:Xixi.java,输出 Xixi Say: hello pom中配置为

<groupId>com.paxi</groupId>
  <artifactId>xixi</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>xixi</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

执行 mvn clean install 生成jar包 xixi-1.0-SNAPSHOT.jar ,执行jar命令,执行反馈出错

⇒  java -jar xixi-1.0-SNAPSHOT.jar
xixi-1.0-SNAPSHOT.jar中没有主清单属性

对jar进行解压缩 jar xvf xixi-1.0-SNAPSHOT.jar 查看对应文件MANIFEST.MF

⇒  cat META-INF/MANIFEST.MF
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: paxi
Created-By: Apache Maven 3.3.3
Build-Jdk: 1.8.0_121

在pom中添加插件 maven-jar-plugin

<build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <version>3.1.0</version>
        <configuration>
          <archive>
            <manifest>
              <mainClass>com.paxi.Xixi</mainClass>
            </manifest>
          </archive>
        </configuration>
      </plugin>
    </plugins>
  </build>

执行成功输出

⇒  java -jar xixi-1.0-SNAPSHOT.jar
Xixi Say: hello

再对解压缩后的MANIFEST.MF文件查看为

⇒  cat META-INF/MANIFEST.MF
Manifest-Version: 1.0
Built-By: paxi
Created-By: Apache Maven 3.3.3
Build-Jdk: 1.8.0_121
Main-Class: com.paxi.Xixi  //新增

在pom中添加依赖,maven如何生成可执行jar?

需要使用插件 maven-dependency-plugin maven-jar-plugin







请到「今天看啥」查看全文


推荐文章
民谣在路上  ·  乐坛常青树:保罗西蒙  | 电台
7 年前
三联生活周刊  ·  80年前的今天,我们的首都沦陷了
7 年前
为你读诗  ·  爸爸去哪了,请把他还给我
7 年前