Windows 安装 Temurin 21 LTS(开源、免费商用),安装器会自动写入 JAVA_HOME
winget install EclipseAdoptium.Temurin.21.JDK配置 Java 开发环境:Temurin/OpenJDK 安装、SDKMAN 多版本切换、JAVA_HOME 设置、Maven/Gradle 换源、工程创建与常见报错排查。
Windows 安装 Temurin 21 LTS(开源、免费商用),安装器会自动写入 JAVA_HOME
winget install EclipseAdoptium.Temurin.21.JDKmacOS 用 Homebrew、Ubuntu 用 Adoptium 源安装 JDK 21
# macOS
brew install --cask temurin@21
# Ubuntu / Debian
sudo apt update && sudo apt install -y temurin-21-jdkmacOS/Linux 用 SDKMAN 安装 JDK,后续可一条命令切换版本
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install java 21.0.4-temWindows 无官方 SDKMAN 支持,请改用 winget 或 WSL
查看可用版本、临时切换以及设置默认 JDK
sdk list java
sdk use java 17.0.12-tem
sdk default java 21.0.4-tem安装 Maven 并确认其识别到的 JDK 版本
winget install Apache.Maven
mvn -v安装 Gradle,输出中会同时显示 JVM 版本
winget install Gradle.Gradle
# macOS
brew install gradle
gradle -v写入 ~/.m2/settings.xml 的 mirrors 节点,让 Maven 全量走阿里云仓库
<mirror>
<id>aliyun</id>
<mirrorOf>*</mirrorOf>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>查看合并后的生效配置,确认镜像确实被加载
mvn help:effective-settings在 build.gradle.kts 的 repositories 中替换为阿里云仓库
repositories {
maven { url = uri("https://maven.aliyun.com/repository/public") }
}公司自签证书导致 SSL 握手失败时临时跳过校验,仅用于内网
mvn -Dmaven.wagon.http.ssl.insecure=true clean package让 Java 进程本身走代理,排查依赖下载与外部接口超时
java -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=7890 -jar app.jarWindows 设置 JAVA_HOME 并把 bin 目录加入 PATH
# Windows(永久生效,需重开终端)
setx JAVA_HOME "C:\Program Files\Eclipse Adoptium\jdk-21"
setx PATH "%JAVA_HOME%\bin;%PATH%"修改 PATH 时不要覆盖原值,否则系统命令会失效
macOS 用 java_home 定位 JDK,再写入 shell 配置
# macOS / Linux
echo 'export JAVA_HOME=$(/usr/libexec/java_home -v 21)' >> ~/.zshrc
echo 'export PATH="$JAVA_HOME/bin:$PATH"' >> ~/.zshrc确认真实生效的 JAVA_HOME,多版本冲突时优先看这里
echo %JAVA_HOME%
# macOS / Linux
echo $JAVA_HOMEMaven 的输出里同时包含 Java 版本与 JAVA_HOME,最简单的一致性检查
mvn -version验证 JDK 与编译器版本一致,两个版本不一致说明 PATH 指向了另一个 JDK
java -version
javac -version用 Maven 原型快速生成标准目录结构的工程
mvn archetype:generate -DgroupId=com.demo -DartifactId=demo -DinteractiveMode=false打包并运行产物,验证构建链路是否可用
mvn clean package
java -jar target/demo-1.0-SNAPSHOT.jar用 Gradle 初始化 Java 应用工程
gradle init --type java-application打开 JDK 自带交互式环境,快速验证语法与 API 行为
jshellVS Code 安装 Java 扩展包(调试、测试、依赖管理)与语言服务
code --install-extension vscjava.vscode-java-pack
code --install-extension redhat.javaWindows 安装免费的 IntelliJ IDEA 社区版;macOS 用 brew install --cask intellij-idea-ce
winget install JetBrains.IntelliJIDEA.Community用 SDKMAN 统一管理 Maven 与 Gradle 版本,避免团队版本不一致
sdk install maven
sdk install gradle同时装了多个 JDK 时,确认命令行实际命中的是哪一个
where java
# macOS / Linux
which -a java打印 JVM 实际加载的 java.home,定位 JAVA_HOME 指向错误的场景
java -XshowSettings:properties -version 2>&1 | findstr java.homeSNAPSHOT 依赖未更新时强制刷新远程仓库
mvn -U clean install排查依赖冲突,定位同一个库的多份版本
mvn dependency:tree -Dincludes=org.slf4j本地仓库中的构件损坏时,删除对应目录后重新拉取
rm -rf ~/.m2/repository/com/demo确认 JVM 默认堆大小,排查容器内存超限被杀的启动问题
java -XX:+PrintFlagsFinal -version | findstr MaxHeapSize本网站使用 Cookie 以确保您在我们的网站上获得最佳体验。 隐私政策.