当前位置:首页 > Java

java 如何打包jar文件

2026-02-05 00:08:24Java

使用命令行打包JAR文件

确保已安装JDK并配置好环境变量。打开命令行工具,导航到项目根目录(包含srcresources的目录)。

创建MANIFEST.MF文件(可选),指定主类等信息:

Main-Class: com.example.MainClass

编译Java文件并生成.class文件:

javac -d target/classes src//*.java

打包为JAR文件(包含清单文件):

jar cvfm myapp.jar MANIFEST.MF -C target/classes .

使用Maven打包JAR文件

pom.xml中确保包含maven-jar-plugin插件配置:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.example.MainClass</mainClass>
                    </manifest>
                </archive>
            </configuration>
        </plugin>
    </plugins>
</build>

执行打包命令:

mvn package

生成的JAR文件默认位于target目录下。

使用Gradle打包JAR文件

build.gradle中添加Jar任务配置:

jar {
    manifest {
        attributes 'Main-Class': 'com.example.MainClass'
    }
}

执行打包命令:

gradle jar

生成的JAR文件默认位于build/libs目录下。

包含依赖的Fat JAR打包

对于需要包含第三方依赖的项目:

Maven方式: 使用maven-assembly-plugin

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>3.3.0</version>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
            <manifest>
                <mainClass>com.example.MainClass</mainClass>
            </manifest>
        </archive>
    </configuration>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Gradle方式: 使用shadow插件:

plugins {
    id 'com.github.johnrengelman.shadow' version '7.1.2'
}

shadowJar {
    manifest {
        attributes 'Main-Class': 'com.example.MainClass'
    }
}

执行gradle shadowJar生成包含所有依赖的JAR。

验证JAR文件

检查JAR内容:

jar tf myapp.jar

运行JAR文件:

java 如何打包jar文件

java -jar myapp.jar

标签: 文件java
分享给朋友:

相关文章

java如何运行

java如何运行

运行Java程序的基本方法 Java程序的运行需要经过编写、编译和执行三个主要阶段。以下是具体步骤: 编写Java源代码 创建一个以.java为后缀的文件,例如HelloWorld.java。文件内…

java如何调用方法

java如何调用方法

调用方法的基本语法 在Java中,调用方法需要明确方法所属的对象(实例方法)或类(静态方法),并传递必要的参数。语法格式如下: 实例方法:对象名.方法名(参数列表); 静态方法:类名.方法名…

java如何配置环境变量

java如何配置环境变量

配置Java环境变量的方法 下载并安装JDK 从Oracle官网或OpenJDK下载适合操作系统的JDK安装包。运行安装程序并按照提示完成安装,记下JDK的安装路径(例如C:\Program File…

java如何避免死锁

java如何避免死锁

避免死锁的方法 固定顺序获取锁 确保所有线程按照相同的顺序获取多个锁。例如,若需要获取锁A和锁B,所有线程必须先获取A再获取B,避免交叉依赖导致的死锁。这种方式破坏了“循环等待”条件。 使用锁超时机…

java如何连接mysql数据库

java如何连接mysql数据库

连接 MySQL 数据库的步骤 添加 MySQL 驱动依赖 在项目中引入 MySQL 的 JDBC 驱动。如果使用 Maven,可以在 pom.xml 中添加以下依赖: <dependency…

java版本如何查看

java版本如何查看

查看Java版本的命令行方法 在命令行或终端中运行以下命令可以查看当前安装的Java版本: java -version 输出示例: java version "1.8.0_301" Java(TM…