在不更改代码的情况下更改 Spring Boot 应用程序的端口

nap*_*ook 4 java tomcat spring-boot

我有两个应用程序需要同时运行,并且都试图在 port 上运行8080。我想将其中之一更改为 port 9000。我试图改变应用程序有春天的安全性,所以在端口上运行8443使用的时候https和端口8080使用时http。我必须在8080不更改任何.java文件的情况下从端口移动它。此外,我还需要在端口上运行其他应用程序8080,因此更改默认的 tomcat 端口不是一个好主意。

我尝试添加到application.propertiesserver.port=9000, spring.main.server.port=9000,然后运行mvn install,然后java -jar target/app.jar

我还尝试java -jar target/app.jar使用不同的标志运行:-Dserver.port=9000--server.port=9000.

无论如何,我明白了- Tomcat started on port(s): 8443 (https) 8080 (http)

所以,我的问题是:

  • 如何让它在与 不同的端口上运行8080
  • 而且,什么可能导致配置文件不更改端口?

Joã*_*aná 6

运行以下命令:

mvn spring-boot:run -Drun.jvmArguments='-Dserver.port=8088'
Run Code Online (Sandbox Code Playgroud)

将以下内容添加plugin到您的pom.xml文件中

<build>
    . . . 
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
Run Code Online (Sandbox Code Playgroud)

  • 从 Spring Boot 2 开始,你应该使用 `spring-boot.run.jvmArguments`。 (2认同)