debian

编译Java项目在Debian上如何操作

小樊
49
2025-09-30 01:45:52
栏目: 编程语言

在Debian上编译Java项目的操作步骤

1. 安装Java开发工具包(JDK)

编译Java项目前需安装JDK(包含javac编译器)。Debian推荐使用OpenJDK(开源版本),通过APT包管理器安装:

sudo apt update          # 更新软件包列表
sudo apt install openjdk-11-jdk  # 安装OpenJDK 11(常用稳定版)

安装完成后,验证JDK是否可用:

java -version    # 查看Java运行时版本
javac -version   # 查看Java编译器版本

若需安装其他版本(如OpenJDK 17),将命令中的openjdk-11-jdk替换为对应版本即可。

2. 安装构建工具(Maven/Gradle)

Java项目通常使用构建工具管理依赖和编译流程,常见工具为Maven(基于XML配置)或Gradle(基于Groovy/DSL配置)。

安装Maven
sudo apt update
sudo apt install maven

验证安装:

mvn -version   # 查看Maven版本
安装Gradle
sudo apt update
sudo apt install gradle

验证安装:

gradle -v      # 查看Gradle版本

若需使用最新版本,可通过SDKMAN(软件开发工具包管理器)安装,步骤参考后续扩展内容。

3. 获取Java项目源码

项目源码可通过以下方式获取:

4. 编译Java项目

根据项目使用的构建工具,执行对应编译命令:

Maven项目

在项目根目录(含pom.xml文件)下运行:

mvn clean install
Gradle项目

在项目根目录(含build.gradle文件)下运行:

gradle build

该命令会编译代码、运行测试(若有)并打包项目。生成的JAR文件位于build/libs目录(如build/libs/my-java-project.jar)。

5. (可选)创建可执行JAR文件

若项目需要打包为包含所有依赖的可执行JAR(便于直接运行),需配置构建工具插件:

Maven项目

pom.xml文件的<build>标签内添加maven-assembly-plugin插件:

<build>
    <plugins>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>3.3.0</version>
            <configuration>
                <archive>
                    <manifest>
                        <mainClass>com.example.MainClass</mainClass> <!-- 替换为你的主类 -->
                    </manifest>
                </archive>
                <descriptorRefs>
                    <descriptorRef>jar-with-dependencies</descriptorRef> <!-- 包含所有依赖 -->
                </descriptorRefs>
            </configuration>
            <executions>
                <execution>
                    <id>make-assembly</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

重新运行mvn clean install,生成的可执行JAR位于target目录(如target/my-app-1.0-SNAPSHOT-jar-with-dependencies.jar)。

Gradle项目

build.gradle文件中添加shadow插件(需先在项目根目录运行gradle wrapper生成Gradle Wrapper):

plugins {
    id 'java'
    id 'com.github.johnrengelman.shadow' version '7.0.0' // 使用最新版本
}

shadowJar {
    manifest {
        attributes 'Main-Class': 'com.example.MainClass' // 替换为你的主类
    }
}

运行gradle shadowJar,生成的可执行JAR位于build/libs目录(如build/libs/my-java-project-all.jar)。

6. 运行Java项目

使用java命令运行编译后的JAR文件:

java -jar path/to/your-executable.jar

例如:

扩展:使用SDKMAN管理多个Java版本

若需在Debian上安装多个Java版本(如Java 8、11、17)并切换,可使用SDKMAN(跨平台SDK管理工具):

# 安装SDKMAN
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"

# 列出可用Java版本
sdk list java

# 安装指定版本(如OpenJDK 17)
sdk install java 17.0.9-open

# 切换默认Java版本
sdk use java 17.0.9-open

# 验证当前Java版本
java -version

SDKMAN可方便地管理多个Java版本,避免手动配置环境变量的麻烦。

0
看了该问题的人还看了