使用 Maven 在 Linux 上打 Jar 包

在 Java 开发过程中,打 JAR 包是将应用程序封装成一个文件的标准方式。JAR (Java ARchive) 文件可以包含 Java 类文件、资源文件和元数据。本文将介绍如何在 Linux 环境下使用 Maven 打 JAR 包,同时提供代码示例和图示,以帮助初学者理解整个过程。

1. 什么是 Maven

Maven 是一个流行的项目管理工具,它可以帮助开发者在 Java 项目中管理依赖关系、构建项目和打包 JAR 文件。通过 Maven,可以自动下载项目所需的库文件,并将它们放到本地仓库中。

2. 安装 Maven 和 Java

在 Linux 环境下,确保你已经安装了 Java 和 Maven。可以通过以下命令检查它们是否已安装:

java -version
mvn -v

如果未安装,可以使用以下命令进行安装(以 Ubuntu 为例):

sudo apt update
sudo apt install openjdk-11-jdk
sudo apt install maven

3. 创建 Maven 项目

使用 Maven 创建新项目非常简单。打开终端并运行以下命令来创建一个基本的 Java 项目:

mvn archetype:generate -DgroupId=com.example -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false

这将在当前目录下创建一个名为 my-app 的文件夹,其中包含 Maven 项目的基本结构。

4. 项目结构

生成的项目结构如下:

my-app
|-- pom.xml
`-- src
    `-- main
        |-- java
        |   `-- com
        |       `-- example
        |           `-- App.java
        `-- resources

其中,pom.xml 是 Maven 的核心配置文件,而 App.java 是示例 Java 类。

5. 编辑代码

我们将修改 App.java 来创建一个简单的 Java 应用程序。打开 src/main/java/com/example/App.java,并编辑如下:

package com.example;

public class App {
    public static void main(String[] args) {
        System.out.println("Hello, Maven!");
    }
}

6. 配置 pom.xml

pom.xml 中,你可以配置项目的元数据、依赖关系和构建生命周期。下面是一个简单的 pom.xml 示例:

<project xmlns="
         xmlns:xsi="
         xsi:schemaLocation=" 
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>my-app</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
    </properties>
</project>

该配置文件指定了 Java 的版本和项目的一些基本信息。

7. 打 Jar 包

在项目的根目录(即 my-app 文件夹)下,可以执行以下命令来打包项目:

mvn package

如果一切顺利,Maven 会编译你的代码并在 target 目录中生成一个 my-app-1.0-SNAPSHOT.jar 文件。

生成的文件结构如下:

my-app
|-- pom.xml
|-- target
|   |-- my-app-1.0-SNAPSHOT.jar
|   `-- ...
`-- src

8. 运行 Jar 包

要运行生成的 JAR 文件,可以使用以下命令:

java -jar target/my-app-1.0-SNAPSHOT.jar

你应该会看到输出:

Hello, Maven!

9. UML 类图与ER图

在软件设计中,类图和ER图有助于我们更好地理解系统的结构和数据关系。下面是一个简单的 UML 类图和 ER 图,它们表示了 Java 项目的基本结构和数据关系。

UML 类图

classDiagram
    class App {
        +main(args: String[])
    }

ER 图

erDiagram
    App {
        +String[] args
    }

说明

  • UML 类图展示了 App 类及其 main 方法。
  • ER 图展示了 App 类与其输入参数的关系。

结尾

通过以上步骤,你已经学会了如何在 Linux 上使用 Maven 打包 Java 应用,并制作 JAR 文件。Maven 是一个强大的工具,它可以帮助你高效管理项目依赖和构建过程。希望本文对你理解 Maven 和 JAR 的打包过程有所帮助!根据自己的项目需求,深入学习 Maven 的其他功能,定能提升你的开发效率。