springboot는 일반적으로 war 패키지를 배포하기 때문에 포트가 여러 개인 클라우드 개발 모드로 변경하면 배포가 익숙하지 않습니다.
결국 war 패키지는 Tomcat의 루트 디렉터리에 있어야 합니다. 프로젝트 이름인지 아닌지
그리고 이 디렉터리 제한은 프로젝트를 배치하고 로그인 포트를 tomcat 인터페이스로 제한할 수 있습니다
따라서 jar 패키지 배포는 불가피한 방법이 되었습니다
1. pom 설정 추가
정적 파일. 접근이 필요하므로 정적 파일 webapp 아래의 위치를 다시 지정해야 합니다. 구체적인 구성은 다음과 같습니다
<resource> <directory>src/main/webapp</directory> <targetPath>META-INF/resources</targetPath> <includes> <include>**/*.*</include> </includes> <filtering>false</filtering> </resource>
2. war 패키지에서 jar 패키지로 패키징 방법을 변경합니다.
1. 패키지 모드
<!--<packaging>war</packaging>--> <packaging>jar</packaging>
2. war-plugin
<!--<build> <plugins> <plugin> <artifactId>maven-war-plugin</artifactId> <version>3.0.0</version> </plugin> </plugins> </build>--> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <mainClass>org.supwisdom.Application</mainClass> </configuration> </plugin> </plugins> </build>
3. spring-boot-starter-tomcat 관련 종속성을 댓글로 처리하세요.
4.SpringApplicationBuilder 구성을 댓글로 처리하세요. Application.java에서 시작 방법:
cd 현재 서비스 pom.xml과 동일한 디렉터리에
// @Override // protected SpringApplicationBuilder configure(SpringApplicationBuilder application) { // return application.sources(Application.class); // } public static void main(String[] args) throws Exception { System.setProperty("spring.devtools.restart.enabled", "false"); SpringApplication.run(Application.class, args); }그러나 실제 사용 중에 특정 문제가 발생합니다. 예를 들어 개발 중에 정적 파일 코드를 수정하면 됩니다. 항상 응답하는 것은 아니며 브라우저 캐시를 지워도 소용이 없습니다
따라서 캐시는 springboot 패키지 jar에 존재하므로 개발 중에 위 내용을 주석 처리해야 합니다
위 내용은 springboot에 jar 패키지를 배포하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!