当前位置: 首页 > backend >正文

SpringBoot3.x入门到精通系列:1.2 开发环境搭建

SpringBoot 3.x 开发环境搭建

🎯 环境要求

在开始SpringBoot 3.x开发之前,我们需要准备以下开发环境:

必需组件

组件版本要求推荐版本
JDK17+JDK 21 LTS
Maven3.6.3+3.9.x
Gradle7.5+8.x
IDE支持Java 17+IntelliJ IDEA 2023+

☕ JDK安装与配置

1. 下载JDK

推荐使用以下JDK发行版:

  • Oracle JDK: 官方下载
  • OpenJDK: AdoptOpenJDK
  • Amazon Corretto: AWS Corretto

2. 安装JDK

Windows安装
# 下载msi安装包,双击安装
# 或使用Chocolatey
choco install openjdk17# 或使用Scoop
scoop install openjdk17
macOS安装
# 使用Homebrew
brew install openjdk@17# 设置JAVA_HOME
echo 'export JAVA_HOME=/opt/homebrew/opt/openjdk@17' >> ~/.zshrc
Linux安装
# Ubuntu/Debian
sudo apt update
sudo apt install openjdk-17-jdk# CentOS/RHEL
sudo yum install java-17-openjdk-devel

3. 验证安装

java -version
javac -version

期望输出:

openjdk version "17.0.8" 2023-07-18
OpenJDK Runtime Environment (build 17.0.8+7-Ubuntu-1ubuntu122.04)
OpenJDK 64-Bit Server VM (build 17.0.8+7-Ubuntu-1ubuntu122.04, mixed mode, sharing)

🔧 构建工具配置

Maven配置

1. 下载安装Maven
# Windows (Chocolatey)
choco install maven# macOS (Homebrew)
brew install maven# Linux
sudo apt install maven  # Ubuntu/Debian
sudo yum install maven  # CentOS/RHEL
2. 配置settings.xml
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"><!-- 本地仓库路径 --><localRepository>D:/maven/repository</localRepository><!-- 镜像配置 --><mirrors><mirror><id>aliyun</id><name>Aliyun Maven</name><url>https://maven.aliyun.com/repository/public</url><mirrorOf>central</mirrorOf></mirror></mirrors><!-- 配置文件 --><profiles><profile><id>jdk-17</id><activation><activeByDefault>true</activeByDefault><jdk>17</jdk></activation><properties><maven.compiler.source>17</maven.compiler.source><maven.compiler.target>17</maven.compiler.target><maven.compiler.compilerVersion>17</maven.compiler.compilerVersion></properties></profile></profiles>
</settings>

Gradle配置

1. 安装Gradle
# Windows (Chocolatey)
choco install gradle# macOS (Homebrew)
brew install gradle# 或使用Gradle Wrapper (推荐)
./gradlew wrapper --gradle-version 8.4
2. 配置gradle.properties
# 全局配置文件位置: ~/.gradle/gradle.properties# JVM参数
org.gradle.jvmargs=-Xmx2048m -XX:MaxMetaspaceSize=512m# 并行构建
org.gradle.parallel=true# 构建缓存
org.gradle.caching=true# 配置仓库镜像
systemProp.maven.repo.central=https://maven.aliyun.com/repository/central

💻 IDE配置

IntelliJ IDEA配置

1. 下载安装
  • IntelliJ IDEA官网
  • 推荐使用Ultimate版本(学生可免费使用)
2. 配置JDK
File -> Project Structure -> Project Settings -> Project
- Project SDK: 选择JDK 17+
- Project language level: 17 - Sealed types, always-strict floating-point semantics
3. 配置Maven
File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven
- Maven home directory: 指向Maven安装目录
- User settings file: 指向settings.xml文件
- Local repository: 指向本地仓库目录
4. 安装有用的插件
File -> Settings -> Plugins
推荐插件:
- Spring Boot
- Lombok
- MyBatis Log Plugin
- Rainbow Brackets
- GitToolBox

VS Code配置

1. 安装扩展
{"recommendations": ["vscjava.vscode-java-pack","vmware.vscode-spring-boot","gabrielbb.vscode-lombok","redhat.java","vscjava.vscode-maven"]
}
2. 配置settings.json
{"java.home": "/path/to/jdk-17","java.configuration.runtimes": [{"name": "JavaSE-17","path": "/path/to/jdk-17"}],"maven.executable.path": "/path/to/maven/bin/mvn"
}

🚀 创建第一个项目

使用Spring Initializr

1. 在线创建

访问 Spring Initializr

配置项目:

Project: Maven Project
Language: Java
Spring Boot: 3.2.x
Group: com.example
Artifact: demo
Name: demo
Description: Demo project for Spring Boot
Package name: com.example.demo
Packaging: Jar
Java: 17
2. 命令行创建
curl https://start.spring.io/starter.zip \-d dependencies=web,data-jpa,h2 \-d type=maven-project \-d language=java \-d bootVersion=3.2.0 \-d baseDir=demo \-d groupId=com.example \-d artifactId=demo \-o demo.zipunzip demo.zip
cd demo
3. IDE集成创建

IntelliJ IDEA:

File -> New -> Project -> Spring Initializr

VS Code:

Ctrl+Shift+P -> Spring Initializr: Generate a Maven Project

验证环境

创建简单的Controller测试:

package com.example.demo;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;@SpringBootApplication
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}
}@RestController
class HelloController {@GetMapping("/hello")public String hello() {return "Hello SpringBoot 3.x!";}
}

运行应用:

./mvnw spring-boot:run

访问测试:

curl http://localhost:8080/hello

🔍 常见问题解决

1. JDK版本问题

# 检查当前Java版本
java -version# 设置JAVA_HOME环境变量
export JAVA_HOME=/path/to/jdk-17

2. Maven依赖下载慢

<!-- 使用阿里云镜像 -->
<mirror><id>aliyun</id><url>https://maven.aliyun.com/repository/public</url><mirrorOf>central</mirrorOf>
</mirror>

3. IDE无法识别SpringBoot项目

  • 确保安装了SpringBoot插件
  • 重新导入Maven/Gradle项目
  • 清理并重新构建项目

📋 环境检查清单

  • JDK 17+安装并配置
  • Maven/Gradle安装并配置
  • IDE安装并配置插件
  • 网络连接正常(下载依赖)
  • 创建测试项目成功
  • 应用启动正常
  • 接口访问正常

🔗 下一篇

环境搭建完成后,下一篇我们将创建第一个完整的SpringBoot 3.x应用,并深入了解项目结构。


本文关键词: 开发环境, JDK17, Maven, Gradle, IntelliJ IDEA, Spring Initializr

http://www.xdnf.cn/news/16701.html

相关文章:

  • 本地部署VMware ESXi,并实现无公网IP远程访问管理服务器
  • Linux 服务器性能优化:性能监控,系统性能调优,进程优先级,内核升级全解析
  • Maven 与单元测试:JavaWeb 项目质量保障的基石
  • 银河麒麟桌面操作系统:自定义截图快捷键操作指南
  • 云计算一阶段Ⅱ——3. Linux 计划任务管理
  • TypeScript 基础介绍(二)
  • 使用python写一套完整的智能体小程序
  • Linux网络-------3.应⽤层协议HTTP
  • 智慧物流分拣误检率↓85%!陌讯轻量化部署算法在动态包裹检测的落地实践
  • Winform PathGradientBrush类使用
  • Conda环境下配置的基本命令
  • Ubuntu 下配置 NVIDIA 驱动与 CUDA 环境(适配 RTX 4060Ti)
  • webpack-babel
  • SAM附录详解
  • 【C#】基于SharpCompress实现压缩包解压功能
  • 揭秘动态测试:软件质量的实战防线
  • 【Golang】用官方rate包构造简单IP限流器
  • 【NLP舆情分析】基于python微博舆情分析可视化系统(flask+pandas+echarts) 视频教程 - 微博评论数据可视化分析-点赞区间折线图实现
  • 04百融云策略引擎项目laravel实战步完整安装composer及tcpdf依赖库和验证-优雅草卓伊凡
  • Cesium 快速入门(二)底图更换
  • 数据库学习------数据库隔离类型及其与事务特性
  • 如何将 Redis 监控集成到微服务整体的监控体系中( 如 Prometheus + Grafana)
  • 如何为C#加入EPPlus 包
  • 哈希相关的模拟实现
  • 【人工智能】当AI智能体遇上安全与伦理:一场技术与人性的对话
  • Java学习第九十一部分——OkHttp
  • Unity游戏开发中的3D数学基础详解
  • SQL 中 WHERE 与 HAVING 的用法详解:分组聚合场景下的混用指南
  • Kotlin -> 普通Lambda vs 挂起Lambda
  • Side band ECC、Inline ECC、On-die ECC、Link ECC