在 IntelliJ IDEA 中启动多个不同端口的 Spring Boot 应用
在 IntelliJ IDEA 中启动多个不同端口的 Spring Boot 应用,主要有以下几种方式,适用于不同场景:
方式一:通过配置文件指定端口(单次启动不同配置)
如果需要启动同一个项目的多个实例(端口不同),可以通过配置文件或命令行指定端口。
1. 配置文件方式(推荐)
在 application.properties
或 application.yml
中设置默认端口,再通过多环境配置或启动参数覆盖:
-
默认配置文件(
application.properties
):server.port=8080 # 默认端口
-
启动时指定新端口:
点击 IDEA 启动按钮旁的下拉框,选择 Edit Configurations…
在弹出的窗口中,找到你的 Spring Boot 启动配置,在 VM options 中添加:-Dserver.port=8081 # 新端口
(如需启动第三个实例,再复制一个配置,修改端口为 8082 即可)
2. 命令行参数方式
如果通过 Maven/Gradle 启动,可在启动命令中指定端口:
- Maven:
在 IDEA 的 Terminal 中执行:mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=8081
- Gradle:
gradle bootRun --args="--server.port=8081"
方式二:多环境配置文件(固定多端口)
如果需要频繁启动不同端口的实例,可以创建多个环境配置文件,每次启动时选择环境。
-
创建多环境配置文件:
application-dev.properties
(开发环境1):server.port=8080
application-test.properties
(开发环境2):server.port=8081
-
启动时指定环境:
在启动配置的 VM options 中添加:-Dspring.profiles.active=test # 启用 test 环境(端口8081)
或在 Program arguments 中添加:
--spring.profiles.active=test
方式三:复制启动配置(一键启动多个实例)
如果需要同时启动多个不同端口的实例,可复制启动配置并修改端口:
- 打开启动配置(Edit Configurations…)。
- 选中你的 Spring Boot 配置,右键选择 Copy。
- 在复制的配置中,修改 Name(如
App-8081
),并在 VM options 中设置新端口:-Dserver.port=8081
- 点击 Apply 保存,之后可在启动列表中选择不同配置启动。
注意事项
- 如果项目依赖端口(如注册中心、数据库连接等),需确保其他配置(如
spring.datasource.url
)也适配多实例,避免冲突。 - 若使用 Spring Cloud,多实例启动可能需要配合服务注册中心(如 Eureka、Nacos)的集群配置。
通过以上方式,即可在 IDEA 中灵活启动不同端口的 Spring Boot 应用。