You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot 2.2.6通过Maven指定端口启动失败的问题咨询

如何通过Maven指定Spring Boot 2.2.6应用的启动端口

你遇到的问题很常见——直接在Maven命令后加-Dserver.port=8888时,这个参数是传给Maven进程的,而不是Spring Boot应用本身的JVM进程,所以Spring Boot读取不到这个端口配置,还是会用默认的8080。下面给你几种靠谱的解决方法,完全适配Spring Boot 2.2.6版本:

方法1:通过spring-boot.run.jvmArguments传递JVM参数

这是最直接的临时指定方式,把端口参数明确传给Spring Boot应用的JVM:

mvn clean install spring-boot:run -Dspring-boot.run.jvmArguments="-Dserver.port=8888"

spring-boot.run.jvmArguments是Spring Boot Maven插件专门用来传递JVM参数给应用进程的配置项,这样Spring Boot就能正确读取到server.port系统属性了。

方法2:直接设置应用属性(更简洁)

Spring Boot Maven插件支持通过spring-boot.run.xxx直接映射应用的环境属性,所以你也可以简化命令:

mvn clean install spring-boot:run -Dspring-boot.run.server.port=8888

这种方式不需要嵌套-D,更直观,同样能让应用在8888端口启动。

方法3:在pom.xml中固定配置端口

如果你的项目经常需要用固定端口启动,可以直接在pom.xml里配置Spring Boot Maven插件:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <version>2.2.6.RELEASE</version>
            <configuration>
                <!-- 固定启动端口为8888 -->
                <jvmArguments>-Dserver.port=8888</jvmArguments>
                <!-- 或者用命令行参数方式:
                <arguments>--server.port=8888</arguments>
                -->
            </configuration>
        </plugin>
    </plugins>
</build>

配置完成后,直接运行mvn clean install spring-boot:run就会自动使用8888端口。如果需要临时改端口,还是可以用方法1或2的命令行参数覆盖这个配置。

内容的提问来源于stack exchange,提问作者Mateusz Sobczak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.07 09:27:57