maven打包可执行jar包

Posted weidiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven打包可执行jar包相关的知识,希望对你有一定的参考价值。

创建一个文件夹haha,里面包含三项

  • Haha.java
  • Main.java
  • pom.xml

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>wyf</groupId>
    <artifactId>CloneSite</artifactId>
    <version>1.0-SNAPSHOT</version>
    <build>
        <sourceDirectory>.</sourceDirectory>
        <finalName>haha</finalName>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.7</source>
                    <target>1.7</target>
                    <encoding>utf-8</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>

maven遵守约定大于配置的原则,它有一套默认的目录结构,但是也可以在build中指定源代码目录和资源文件目录。

Main.java

public class Main{
    public static void main(String[] args) {
        System.out.println("天下大势为我所控");
    }
}

Haha.java

public class Haha {
    public static void main(String[] args) {
        System.out.println("hello world");
    }
}

在此文件夹下打开cmd,mvn package,打包即可生成target目录。
cd到target,执行java -cp haha.jar Main就会运行Main类,执行java -cp haha.jar Haha就会运行Haha类。
我认为这种运行jar包的方式相对于直接打包成可运行的jar包更好,因为这样打包更简单。
可执行jar包其实也可以使用java -cp haha.jar Something的方式运行其它类,只不过它有默认的主类。

以上是关于maven打包可执行jar包的主要内容,如果未能解决你的问题,请参考以下文章

Maven 生成打包可执行jar包

maven项目用assembly打包可执行jar包

Maven 项目用Assembly打包可执行jar包

Maven 项目用Assembly打包可执行jar包

maven打包可执行jar包

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