前面6步都装好了,但这不代表能用。这一节做一个完整的环境验证,确保每个工具都正常工作,然后你就可以放心去拉项目了。
一、环境清单
先确认你装了哪些东西:
| 工具 | 作用 | 验证命令 |
|---|---|---|
| JDK | Java运行环境 | java -version |
| Maven | 依赖管理 | mvn -version |
| IDEA | 开发工具 | 打开IDEA看是否正常 |
| MySQL | 数据库 | mysql -u root -p |
| Redis | 缓存 | redis-cli ping |
| Git | 版本控制 | git --version |
二、逐个验证
1. JDK验证
# 检查Java版本
java -version
# 检查编译器
javac -version
通过标准:
- 两个命令都能输出版本号
- 版本号和你安装的一致
- 没有"不是内部或外部命令"的报错
2. Maven验证
mvn -version
通过标准:
- 输出Maven版本号
- 输出的Java版本和你的JDK版本一致
- 能看到Maven home路径
3. MySQL验证
# 连接MySQL
mysql -u root -p
# 在MySQL里执行
SHOW DATABASES;
SELECT VERSION();
EXIT;
通过标准:
- 能成功登录
- 能看到数据库列表(至少有information_schema、mysql等系统库)
- 版本号正确
4. Redis验证
# 测试连接
redis-cli ping
# 如果有密码
redis-cli -a 你的密码 ping
通过标准:
- 输出
PONG就说明Redis正常运行
5. Git验证
# 版本
git --version
# 用户配置
git config user.name
git config user.email
# SSH验证
ssh -T git@github.com
# 或
ssh -T git@gitee.com
通过标准:
- git命令可用
- 用户名和邮箱已配置
- SSH连接成功(看到Welcome或successfully authenticated)
6. IDEA验证
打开IDEA,检查:
- 能正常打开,不报错
- File → Project Structure → SDK 里有JDK
- Settings → Maven 路径配置正确
- Settings → Version Control → Git → Test 显示版本号
三、综合测试:跑一个完整的SpringBoot项目
上面的单项测试过了,不代表组合在一起能用。跑一个最小的SpringBoot项目,把JDK + Maven + MySQL + Redis 全串起来。
1. 创建测试项目
打开IDEA → New Project → Spring Initializr
配置:
- Name:
env-test - Language: Java
- Type: Maven
- JDK: 选你的JDK版本
- Packaging: Jar
- Java: 8(或你安装的版本)
Dependencies(依赖):
- Spring Web
- Spring Data Redis
- MySQL Driver
- Lombok
点Create。
2. 等待Maven下载依赖
首次创建SpringBoot项目,Maven会下载大量依赖,可能需要几分钟。
如果一直卡住,检查:
- Maven镜像是否配置正确
- 网络是否正常
- IDEA里Maven配置是否指向你安装的Maven
3. 配置数据库和Redis连接
编辑src/main/resources/application.yml:
server:
port: 8080
spring:
# MySQL配置
datasource:
url: jdbc:mysql://localhost:3306/mysql?useSSL=false&serverTimezone=Asia/Shanghai&characterEncoding=utf-8
username: root
password: 你的MySQL密码
driver-class-name: com.mysql.cj.jdbc.Driver
# Redis配置
redis:
host: localhost
port: 6379
password: 你的Redis密码(没设密码就删掉这行)
database: 0
4. 写一个测试接口
创建src/main/java/com/example/envtest/controller/TestController.java:
package com.example.envtest.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.HashMap;
import java.util.Map;
@RestController
public class TestController {
@Autowired
private JdbcTemplate jdbcTemplate;
@Autowired
private StringRedisTemplate redisTemplate;
@GetMapping("/test")
public Map<String, Object> test() {
Map<String, Object> result = new HashMap<>();
// 测试MySQL
try {
String mysqlVersion = jdbcTemplate.queryForObject(
"SELECT VERSION()", String.class);
result.put("mysql", "OK - " + mysqlVersion);
} catch (Exception e) {
result.put("mysql", "FAIL - " + e.getMessage());
}
// 测试Redis
try {
redisTemplate.opsForValue().set("test-key", "hello-redis");
String value = redisTemplate.opsForValue().get("test-key");
result.put("redis", "OK - " + value);
} catch (Exception e) {
result.put("redis", "FAIL - " + e.getMessage());
}
result.put("java", "OK - " + System.getProperty("java.version"));
result.put("time", System.currentTimeMillis());
return result;
}
}
5. 启动项目
在IDEA里找到主启动类(带@SpringBootApplication注解的类),右键 → Run。
控制台看到类似输出就说明启动成功:
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.7.18)
... 省略 ...
Tomcat started on port(s): 8080 (http)
Started EnvtestApplication in 2.123 seconds
如果启动报错,看报错信息,大概率是:
- MySQL连不上 → 检查URL、用户名、密码
- Redis连不上 → 检查host、port、password
- 端口8080被占用 → 换个端口或杀掉占用进程
6. 访问接口
浏览器打开:http://localhost:8080/test
正常返回:
{
"mysql": "OK - 8.0.36",
"redis": "OK - hello-redis",
"java": "OK - 1.8.0_371",
"time": 1234567890123
}
看到这个JSON,恭喜你,全套环境完全正常!
7. 如果某个组件失败
{
"mysql": "OK - 8.0.36",
"redis": "FAIL - Unable to connect to Redis"
}
Redis显示FAIL,按报错信息排查:
- Redis服务是否启动
- 密码是否正确
- 端口是否被占用
MySQL同理。
四、IDEA终端验证
打开IDEA的Terminal(底部栏),输入:
# 确认IDEA终端能用这些命令
java -version
mvn -version
git --version
mysql --version
redis-cli ping
如果IDEA终端里这些命令都可用,说明环境变量配得没问题。
如果某个命令在cmd里能用但IDEA里不能用:
- 重启IDEA
- 检查IDEA终端的Shell路径配置
五、端口检查
确保常用端口没被占用:
# 检查常用端口
netstat -ano | findstr "8080 3306 6379"
| 端口 | 服务 |
|---|---|
| 8080 | SpringBoot默认端口 |
| 3306 | MySQL |
| 6379 | Redis |
如果有端口被占用,用taskkill /PID 进程ID /F杀掉,或者换端口。
六、环境检查脚本
写一个bat脚本,一键检查环境:
@echo off
echo ========================================
echo Java开发环境检查
echo ========================================
echo.
echo [1/6] 检查 JDK...
java -version 2>&1 | findstr /i "version"
if %ERRORLEVEL% == 0 (echo [OK] JDK 正常) else (echo [FAIL] JDK 未安装或未配置)
echo.
echo [2/6] 检查 Maven...
mvn -version 2>&1 | findstr /i "Apache Maven"
if %ERRORLEVEL% == 0 (echo [OK] Maven 正常) else (echo [FAIL] Maven 未安装或未配置)
echo.
echo [3/6] 检查 Git...
git --version 2>&1
if %ERRORLEVEL% == 0 (echo [OK] Git 正常) else (echo [FAIL] Git 未安装或未配置)
echo.
echo [4/6] 检查 MySQL 服务...
sc query MySQL80 2>&1 | findstr /i "RUNNING"
if %ERRORLEVEL% == 0 (echo [OK] MySQL 服务运行中) else (echo [WARN] MySQL 服务未运行)
echo.
echo [5/6] 检查 Redis...
redis-cli ping 2>&1
if %ERRORLEVEL% == 0 (echo [OK] Redis 正常) else (echo [WARN] Redis 未运行)
echo.
echo [6/6] 检查端口占用...
netstat -ano | findstr "3306 6379 8080"
echo.
echo ========================================
echo 环境检查完成
echo ========================================
pause
把这段代码存成check-env.bat,双击运行就能一键检查。
七、环境搭建总结
整体流程回顾
1. JDK安装+环境变量 → Java能跑
2. Maven安装+阿里云镜像 → 依赖下载快
3. IDEA安装+配置 → 开发工具就绪
4. MySQL安装+配置 → 数据库就绪
5. Redis安装+配置 → 缓存就绪
6. Git安装+SSH → 能拉代码
7. 全套环境测试 → 验证全部正常
常见环境问题根因
| 问题 | 根因 | 解决 |
|---|---|---|
| 命令找不到 | 环境变量Path没配好 | 检查JAVA_HOME、MAVEN_HOME、Path |
| Maven下载慢 | 没配镜像 | settings.xml配阿里云镜像 |
| 中文乱码 | 编码不一致 | IDEA设UTF-8,MySQL设utf8mb4 |
| 端口被占用 | 多个服务抢同一端口 | 检查端口,换端口或杀进程 |
| SSH连不上 | 公钥没加或路径错 | 重新生成密钥,添加到平台 |
建议备份的东西
- Maven的settings.xml — 配好了镜像和仓库路径
- IDEA的配置导出 — File → Manage IDE Settings → Export Settings
- SSH密钥对 —
~/.ssh/目录下的文件 - 环境变量列表 — 截个图存着
这些东西备份好了,换电脑半小时就能搭好环境,不用从头来。
小结
环境搭建是入职第一道坎,也是后面所有工作的基础。这步搞顺了,后面拉项目、改代码、调bug都顺畅。
如果你跑通了上面那个SpringBoot测试项目,看到接口返回正常JSON,那你的环境就完全没问题了。
下一步:拉公司项目,本地跑起来。