如何在Debian进行Java编译测试
小樊
35
2025-12-26 18:48:07
在 Debian 上进行 Java 编译与测试
一 准备环境
- 更新软件源并安装 JDK(推荐 OpenJDK 17 或 11):
- 安装命令:sudo apt update && sudo apt install openjdk-17-jdk(或 openjdk-11-jdk)
- 验证安装:java -version、javac -version
- 可选:设置 JAVA_HOME(很多框架和工具依赖)
- 查找路径:readlink -f /usr/bin/javac
- 写入全局环境:echo ‘JAVA_HOME=“/usr/lib/jvm/java-17-openjdk-amd64”’ | sudo tee -a /etc/environment
- 使生效:source /etc/environment
- 可选:多版本切换
- 交互选择:sudo update-alternatives --config java 与 sudo update-alternatives --config javac
二 命令行编译与运行
- 单文件
- 编译:javac HelloWorld.java
- 运行:java HelloWorld(不要加 .class 后缀)
- 指定输出目录与类路径
- 编译到 bin:javac -d bin HelloWorld.java
- 运行:java -cp bin HelloWorld
- 多文件一起编译
- javac File1.java File2.java File3.java
- 小技巧
- 查看 JDK 安装路径:readlink -f /usr/bin/javac
- 查看类文件:ls -l .class 或 find . -name ".class"
三 使用构建工具进行单元测试
- 使用 Maven
- 安装:sudo apt install maven
- 快速创建项目:mvn archetype:generate -DgroupId=com.example -DartifactId=demo -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
- 运行测试:mvn test(报告位于 target/surefire-reports)
- 使用 Gradle
- 安装:sudo apt install gradle
- 运行测试:gradle test
- 常用测试框架
- JUnit 5 示例依赖(Maven):
- org.junit.jupiter:junit-jupiter-api:5.7.0(test)
- org.junit.jupiter:junit-jupiter-engine:5.7.0(test)
- 运行后在控制台查看结果,Maven 报告在 target/surefire-reports
四 常见问题与排查
- 命令未找到
- 确认已安装 JDK:sudo apt install openjdk-17-jdk
- 检查可执行文件:which java、which javac
- 版本不一致
- 查看并切换:java -version、javac -version、sudo update-alternatives --config java
- 类找不到
- 使用 -cp 指定类路径:java -cp bin HelloWorld
- 包结构需与目录一致,运行时使用全限定类名
- 编码问题
- 编译时显式指定:javac -encoding UTF-8 HelloWorld.java
- 权限问题
五 一键脚本示例
- 保存为 build_and_run.sh
- #!/bin/bash
set -e
javac -d bin HelloWorld.java
java -cp bin HelloWorld
- 赋予执行权限并运行
- chmod +x build_and_run.sh
- ./build_and_run.sh