用 mvn archetype:generate 可一键生成标准项目结构,推荐命令指定 groupId、artifactId 和 maven-archetype-quickstart;Spring Boot 项目需改用对应 starter 依赖并匹配 JDK 版本;IDEA 导入选 Maven 项目;配置阿里云镜像加速依赖下载;调优 idea.vmoptions 提升 IDE 性能;验证 JAVA_HOME 与 PATH 一致性避免运行时版本冲突。

用 mvn archetype:generate 一键初始化标准项目结构
新环境搭建最耗时的环节往往是手动建包、配 pom.xml、写启动类。Maven Archetype 能跳过这一步,直接生成带基础依赖和目录结构的工程。
推荐命令:
mvn archetype:generate \ -DgroupId=com.example \ -DartifactId=myapp \ -DarchetypeArtifactId=maven-archetype-quickstart \ -DinteractiveMode=false
注意点:
-
maven-archetype-quickstart生成的是最简 Java 项目;如需 Spring Boot,改用spring-boot-starter-parent依赖 +spring-boot-starter-web,再配合spring-boot-starter-parent的2.7.18或3.1.12(JDK 版本要匹配) - IDEA 导入时选 “Import project from external model → Maven”,别选 “Create project from scratch”
- 若提示
Plugin execution not covered by lifecycle configuration,说明 Eclipse M2E 插件未识别插件绑定 —— IDEA 用户可忽略,不影响构建
配置 settings.xml 绕过重复下载依赖
每次重装环境,~/.m2/repository 清空后会触发全量下载,耗时且易因网络中断失败。核心是复用已有仓库或预设镜像源。
立即学习“Java免费学习笔记(深入)”;
实操建议:
- 把旧机器的
~/.m2/repository整体拷到新环境对应路径(注意权限,Linux/macOS 下用chown -R $USER:$USER ~/.m2) - 在
~/.m2/settings.xml中显式配置阿里云镜像(比中央仓库快 3–5 倍):
aliyunmaven * Aliyun Maven https://maven.aliyun.com/repository/public
验证是否生效:运行 mvn help:effective-settings,检查输出中 是否包含该配置。
IDE 启动参数调优避免卡顿
IntelliJ IDEA 在 JDK 17+ 环境下默认启用 ZGC,但小内存机器(≤8GB RAM)反而更慢。关键不是换 JVM,而是关掉冗余扫描。
修改 idea.vmoptions(路径:Help → Edit Custom VM Options):
- 删掉
-XX:+UseZGC(除非你明确需要低延迟 GC) - 加
-Dsun.io.useCanonCaches=false,避免 Windows 下文件路径缓存导致的卡顿 - 设
-XX:ReservedCodeCacheSize=512m,防止热加载时 CodeCache 溢出报java.lang.OutOfMemoryError: Compressed class space
改完重启 IDE,首次索引时间通常缩短 30%–40%。
用 java -jar 快速验证本地 JDK 和 JRE 兼容性
开发环境重建后,常出现 “能编译不能运行” —— 多半是 JAVA_HOME 指向 JDK,但 PATH 里混进了旧版 JRE 的 java。
快速诊断步骤:
- 执行
which java(macOS/Linux)或where java(Windows),看路径是否落在JAVA_HOME/bin下 - 运行
java -version和$JAVA_HOME/bin/java -version,输出必须一致 - 若用 Spring Boot,额外跑
java -jar target/myapp.jar --help,确认不报UnsupportedClassVersionError—— 这说明编译用的 JDK 版本高于运行时 JDK
最容易被忽略的是 Windows 上注册表残留的 JavaSoft 条目,它会让某些工具(如 Maven Wrapper)绕过 JAVA_HOME 直接调用旧版 java.exe。










