如何配置Spring Boot应用程序侦听的TCP/IP端口,使其不使用默认端口8080。


当前回答

如文档中所说,要么设置服务器。端口作为系统属性使用命令行选项jvm -Dserver。端口=8090或添加应用程序。/src/main/resources/ with中的属性

server.port=8090

随机使用端口:

server.port=0

类似地,添加应用程序。Yml /src/main/resources/

server:
  port: 8090

其他回答

此外,您还可以以编程方式配置端口。

对于Spring Boot 2.x.x:

@Configuration
public class CustomContainer implements WebServerFactoryCustomizer<ConfigurableServletWebServerFactory> {
  public void customize(ConfigurableServletWebServerFactory factory){
    factory.setPort(8042);
  }
}

对于旧版本:

@Configuration
public class ServletConfig {
    @Bean
    public EmbeddedServletContainerCustomizer containerCustomizer() {
        return (container -> {
            container.setPort(8012);
        });
    }
}

如果你在使用应用程序。yml添加以下行到它

server:
     port: 9000

当然,随机端口是0。

服务器。对于随机端口,Port = 0

服务器。端口= 8080为自定义8080端口

你可以在java代码中设置port:

HashMap<String, Object> props = new HashMap<>();
props.put("server.port", 9999);

new SpringApplicationBuilder()
    .sources(SampleController.class)                
    .properties(props)
    .run(args);

或者在application.yml中:

server:
    port: 9999

或者在application.properties中:

server.port=9999

或者作为命令行参数:

-Dserver.port=9999

打开应用程序。属性文件。并在属性文件中添加下面的属性。

server.port = 1443

这将很好地工作,您可以根据自己的愿望设置任何端口号。