当前位置:首页 > Java

java 如何生成jar文件

2026-02-05 03:07:24Java

生成 JAR 文件的方法

使用命令行工具

通过 jar 命令手动打包。假设已编译的 .class 文件位于 out/production/MyProject 目录下:

cd out/production/MyProject
jar cvf MyProject.jar *

参数说明:

  • c 创建新 JAR 文件
  • v 生成详细输出
  • f 指定 JAR 文件名
  • * 包含当前目录所有文件

使用 Maven 构建

pom.xml 所在目录执行以下命令:

mvn package

生成的 JAR 文件默认位于 target 目录。需确保 pom.xml 中配置了 maven-jar-plugin

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
        </plugin>
    </plugins>
</build>

使用 Gradle 构建

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

jar {
    manifest {
        attributes 'Main-Class': 'com.example.Main'
    }
    from {
        configurations.runtimeClasspath.collect { 
            it.isDirectory() ? it : zipTree(it) 
        }
    }
}

执行以下命令生成 JAR:

java 如何生成jar文件

gradle jar

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

使用 IDE 生成

IntelliJ IDEA

  1. 打开项目后选择 File > Project Structure
  2. 选择 Artifacts > + > JAR > From modules with dependencies
  3. 指定主类后应用配置
  4. 通过 Build > Build Artifacts 生成 JAR

Eclipse

java 如何生成jar文件

  1. 右键项目选择 Export > Java > JAR file
  2. 选择需要包含的资源文件
  3. 指定输出路径和 JAR 文件名
  4. 勾选 Export generated class files and resources

包含依赖的 FAT JAR

对于需要包含第三方库的 JAR:

Maven 配置

<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.Main</mainClass>
            </manifest>
        </archive>
    </configuration>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

执行命令:

mvn clean compile assembly:single

验证 JAR 文件

检查 JAR 内容或运行:

jar tf MyProject.jar  # 查看内容
java -jar MyProject.jar  # 运行(需配置Main-Class)

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

相关文章

vue实现文件的上传

vue实现文件的上传

文件上传的基本实现 在Vue中实现文件上传通常结合HTML的<input type="file">元素和FormData对象。通过监听文件选择事件获取文件对象,再通过AJAX或axios发…

vue实现静态文件下载

vue实现静态文件下载

实现静态文件下载的方法 在Vue项目中实现静态文件下载可以通过多种方式完成,以下是几种常见的方法: 使用<a>标签下载 将静态文件放置在项目的public目录下,通过<a>…

java前景如何

java前景如何

Java 当前的市场需求 Java 在企业级开发、大数据、云计算等领域仍占据重要地位。许多大型企业(如银行、电商平台)依赖 Java 构建后端系统。招聘平台数据显示,Java 开发岗位数量稳定,尤其在…

java如何连接数据库

java如何连接数据库

Java连接数据库的方法 Java连接数据库通常使用JDBC(Java Database Connectivity)技术,以下是具体步骤和示例代码。 加载数据库驱动 在连接数据库之前,需要加载对应的…

java如何导包

java如何导包

导入包的方法 在Java中,导入包(package)可以通过import语句实现,用于引入其他类或包中的功能。以下是几种常见的导包方式: 导入单个类 import java.util.ArrayL…

如何安装java软件

如何安装java软件

下载Java安装包 访问Oracle官方网站或OpenJDK开源项目页面,选择适合操作系统的Java版本(如Windows、macOS或Linux)。对于个人使用,通常下载JDK(Java Devel…