当前位置:首页 > Java

java如何编译打包

2026-03-23 11:50:34Java

编译 Java 项目

使用 javac 命令编译 Java 源文件(.java)。假设项目结构如下:

src/
  com/example/Main.java

在项目根目录运行以下命令:

javac -d bin src/com/example/Main.java
  • -d bin:指定编译输出目录为 bin
  • 若项目有多个文件,可使用通配符:javac -d bin src/com/example/*.java

打包为 JAR 文件

通过 jar 命令将编译后的 .class 文件打包为 JAR。确保 MANIFEST.MF 文件(可选)指定主类:

Main-Class: com.example.Main

运行以下命令:

java如何编译打包

jar cvfm app.jar META-INF/MANIFEST.MF -C bin .
  • cvfm:创建 JAR(c)、显示详细输出(v)、指定清单文件(fm)。
  • -C bin .:从 bin 目录添加文件到 JAR 根目录。

使用 Maven 打包

若项目使用 Maven,在 pom.xml 所在目录执行:

mvn clean package

生成的 JAR 文件默认位于 target/ 目录,包含依赖项(如配置了 maven-assembly-plugin)。

java如何编译打包

使用 Gradle 打包

对于 Gradle 项目,在 build.gradle 所在目录运行:

gradle build

生成的 JAR 文件位于 build/libs/。如需包含依赖,需在 build.gradle 中配置 jar 任务:

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

运行 JAR 文件

通过以下命令运行打包后的 JAR:

java -jar app.jar

确保 Main-Class 在清单文件中正确配置。

标签: java
分享给朋友:

相关文章

java如何输出数组

java如何输出数组

输出数组的方法 在Java中,输出数组内容有多种方式,具体取决于数组类型和输出格式需求。以下是几种常见的方法: 使用Arrays.toString()方法 适用于一维数组,直接调用Arrays.to…

java前景如何

java前景如何

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

java如何打印数组

java如何打印数组

打印数组的方法 在Java中,打印数组有多种方式,以下是几种常见的方法: 使用Arrays.toString()方法 这种方法适用于一维数组,可以快速将数组转换为字符串形式输出: int[] a…

java如何连接mysql数据库

java如何连接mysql数据库

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

java中如何获取当前时间

java中如何获取当前时间

获取当前时间的几种方法 使用 java.time 包(Java 8及以上推荐) import java.time.LocalDateTime; LocalDateTime currentTime =…

java如何返回数组

java如何返回数组

返回数组的方法 在Java中,可以通过多种方式返回数组。以下是几种常见的方法: 直接返回数组 定义一个方法,返回类型为数组类型,直接在方法内部创建并返回数组。 public int[] getI…