Spring Boot 애플리케이션이 청취하는 TCP / IP 포트를 구성하여 기본 포트 8080을 사용하지 않는 방법.
답변
로이 문서에서 말했다 중 하나를 설정 server.port
JVM에 명령 줄 옵션을 사용하여 시스템 속성으로 -Dserver.port=8090
또는 추가 application.properties
에 /src/main/resources/
와
server.port=8090
임의 포트 사용
server.port=0
답변
스프링 부트 애플리케이션의 Embedded Tomcat에서 포트를 변경하는 주요 방법은 두 가지가 있습니다.
application.properties 수정
먼저 / resources 폴더에서 application.properties 파일을 시도 할 수 있습니다.
server.port = 8090
VM 옵션 수정
두 번째 방법은 파일을 수정하거나 로컬에서만 필요한 것을 체크인하지 않으려면 vm arg를 사용할 수 있습니다.
실행-> 구성 편집-> VM 옵션으로 이동하십시오.
-Dserver.port=8090
또한 자세한 정보가 필요하면 여기에서 다음 블로그 게시물을 볼 수 있습니다 . Spring Boot 응용 프로그램에서 포트 변경
답변
Spring Boot는 (다양한 구현 및 / 또는 객체에 순서대로 연결된 프로세서를 통해) 다양한 구성 외부화 메커니즘을 제공하므로 다음 방법을 통해 jar 아카이브 외부 의 모든 속성을 설정할 수 있습니다 .PropertySource
Environment
-
명령 줄 인수를 통해 속성을 응용 프로그램 인수로 전달
java -jar <path/to/my/jar> --server.port=7788
-
SPRING_APPLICATION_JSON
(Spring Boot 1.3.0+)의 속성에서-
U * IX 쉘에서 환경 변수를 정의하십시오.
SPRING_APPLICATION_JSON='{"server.port":7788}' java -jar <path/to/my/jar>
-
Java 시스템 특성을 사용하여 다음을 수행하십시오.
java -Dspring.application.json='{"server.port":7788}' -jar <path/to/my/jar>
-
명령 행 인수를 전달하십시오.
java -jar <path/to/my/jar> --spring.application.json='{"server.port":7788}'
-
-
JVM 시스템 특성 정의
java -Dserver.port=7788 -jar <path/to/my/jar>
-
OS 환경 변수 정의
-
U * IX 쉘
SERVER_PORT=7788 java -jar <path/to/my/jar>
-
윈도우
SET SERVER_PORT=7788 java -jar <path/to/my/jar>
-
-
구성 파일에 특성
./config/application.properties
배치server.port=7788
다음을 실행하십시오.
java -jar <path/to/my/jar>
-
에 장소 배치
./config/application.yaml
server: port: 7788
다음을 실행하십시오.
java -jar <path/to/my/jar>
-
에 장소 배치
./application.properties
server.port=7788
다음을 실행하십시오.
java -jar <path/to/my/jar>
-
에 장소 배치
./application.yaml
server: port: 7788
다음을 실행하십시오.
java -jar <path/to/my/jar>
위의 방법을 모두 결합 할 수 있으며 목록의 이전 구성이 후자의 구성보다 우선합니다.
예를 들면 다음과 같습니다.
SERVER_PORT=2266 java -Dserver.port=5566 -jar <path/to/my/jar> --server.port=7788
서버가 시작되고 포트 7788에서 수신 대기합니다.
이는 우선 순위가 낮은 PropertySources의 기본 특성 (보통 아카이브에 패키지되거나 소스로 코딩 됨)을 제공 한 다음 런타임 환경에서이를 대체하는 데 매우 유용합니다. Spring Boot의 디자인 철학은 다음과 같습니다.
기본적으로 의견을 제시하되 요구 사항이 기본값에서 벗어나기 시작하면 신속하게 벗어날 수 있습니다.
SERVER_NAME
로 server.name
변환에 의해 이루어졌다 편안한 바인딩 .
답변
또한 프로그래밍 방식으로 포트를 구성 할 수 있습니다
@Configuration
public class ServletConfig {
@Bean
public EmbeddedServletContainerCustomizer containerCustomizer() {
return (container -> {
container.setPort(8012);
});
}
}
답변
Java 코드로 포트를 설정할 수 있습니다.
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
답변
로컬로 실행하려면 다음을 사용하십시오.
mvn spring-boot:run -Drun.jvmArguments='-Dserver.port=8085'
현재 봄 부팅 2.0 , 여기에 명령의 그 작품 (단서가 있었다 여기 )
mvn spring-boot:run -Dspring-boot.run.arguments=--server.port=8085
답변
사용 application.yml
하는 경우 다음 줄을 추가하십시오
server:
port: 9000
물론 임의의 포트의 경우 0입니다.