springboot 의 war 와 jar 패키지 사용 에 대한 자세 한 설명
우선,실전 에서 war 가방 을 어떻게 생 성 하 는 지 는 주로 3 단계 로 나 눌 수 있 습 니 다.
•프로그램 입구 개조
•springboot 내장 tomcat 제거
•spring-boot-maven-plugin 플러그 인 에서 프로그램 입 구 를 설정 합 니 다.
프로그램 입 구 를 개조 하려 면 springboot boot 의 main 입 구 를 차단 한 다음 에 SpringBoot ServletInitializer 를 계승 하고 configure 방법 을 다시 써 야 합 니 다.구체 적 인 코드 는 다음 과 같 습 니 다.
@SpringBootApplication
public class WebApplication extends SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(WebApplication.class);
}
// public static void main(String[] args){
//
// }
}
springboot 내 장 된 tomcat 를 제외 하고 기본 적 인 상황 에서 springboot 는 내 장 된 tomcat 가 통합 되 어 있 습 니 다.war 는 우리 서버 에 있 는 tomcat 에 보 내야 하기 때문에 내 장 된 tomcat 는 필요 하지 않 습 니 다.다음 과 같이 Maven 에서 차단 을 설정 할 수 있 습 니 다.
<!--war - tomcat-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
여 기 는 scope 역할 영역 을 provide 로 하여 tomcat 패 키 지 를 제거 합 니 다.springboot 프레임 워 크 에는 tomcat 패 키 지 를 포함 하고 scope 의 기본 역할 은 copile,컴 파일,테스트,실행 입 니 다.spring-boot-maven-plugin 플러그 인 에 프로그램 입 구 를 설정 합 니 다.위 에 main 입 구 를 차단 하 였 으 나 tomcat 는 시작 클래스 를 통 해 입구 로 사용 하기 때문에 mainClass 를 설정 해 야 합 니 다.
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<!--war - -->
<configuration>
<mainClass>com.platform.WebApplication</mainClass>
</configuration>
</plugin>
마지막 으로 입구 항목 의 패 키 징 을 war 형식 으로 지정 합 니 다. <packaging>war</packaging>
위 에서 준비 한 작업 이 완료 되 었 습 니 다.다음은 Maven 의 package 만 포장 하면 됩 니 다.생 성 후 다음 과 같은 캡 처 를 할 수 있 습 니 다.war 가방 의 내용 은 META-INF 와 WEB-INF 부분 입 니 다.war 는 Liux 에 올 라 온 tomcat 의 webapps 아래 에 있 습 니 다.보통 tomcat 를 설정 하면 자동 으로 war 가방 의 압축 을 풀 수 있 습 니 다.저 는 api 인 터 페 이 스 를 썼 습 니 다.실행 에 성공 한 후에 브 라 우 저 에 정상적으로 표 시 됩 니 다.
다시,우 리 는 jar 가방 을 치기 시 작 했 습 니 다.절차 역시 war 와 차이 가 많 지 않 습 니 다.반대로 주석 을 제거 하 는 내용 에 불과 합 니 다.
•main 입구 복원(springboot 템 플 릿 생 성 main,수정 하지 않 음)
•tomcat 제거 설정 제거(기본적으로 이 설정 이 없 지 않 습 니 다)
•maven-jar-plugin 플러그 인 을 사용 하여 포장 하고 프로그램 입구 와 각종 포함|제외 항목 을 지정 합 니 다.
설명 하지 않 는 main 입 구 를 복원 합 니 다.주로 방금 war 주석 을 달 았 을 때 main 입구 작업 을 설명 합 니 다.보통 springboot 템 플 릿 을 사용 하여 기본 값 으로 생 성 하면 됩 니 다.
public static void main(String[] args) throws ParseException, Exception {
SpringApplication springApplication = new SpringApplication(WebApplication.class);
springApplication.setBannerMode(Banner.Mode.OFF);
springApplication.run(args);
}
tomcat 를 제외 한 설정 을 제거 합 니 다(기본적으로 이 설정 이 없 지 않 습 니 다).마찬가지 로 이 단 계 는 war 를 때 리 는 데 tomcat 를 제외 한 설정 을 추가 하고 직접 삭제 하면 됩 니 다.삭제:
<!--<dependency>-->
<!--<groupId>org.springframework.boot</groupId>-->
<!--<artifactId>spring-boot-starter-tomcat</artifactId>-->
<!--<scope>provided</scope>-->
<!--</dependency>-->
maven-jar-plugin 플러그 인 을 사용 하여 포장 하고 프로그램 입구 와 각종 포함|제외 항목 을 지정 합 니 다.여 기 는 jar 플러그 인 을 통 해 일부 항목 을 설정 하고 설정 파일 과 main 입 구 를 지정 합 니 다.
<!-- jar -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>.</version>
<configuration>
<archive>
<manifest>
<!--<addClasspath>true</addClasspath>-->
<!--<classpathPrefix>lib/</classpathPrefix>-->
<!--main -->
<mainClass>com.platform.WebApplication</mainClass>
</manifest>
</archive>
<!-- -->
<!--<includes>-->
<!--<include>*.yml</include>-->
<!--<include>*.properties</include>-->
<!--<include>templates/**</include>-->
<!--<include>static/**</include>-->
<!--<include>*.xml</include>-->
<!--</includes>-->
</configuration>
</plugin>
마지막 으로 입구 항목 의 패 키 징 을 war 형식 으로 지정 합 니 다. <packaging>jar</packaging>
위 절 차 를 마 친 후 성공 한 jar 가방 을 볼 수 있 습 니 다.그림 참조:마지막 으로 Liux 에서 자바-jar 웹-0.01.SN.jar 를 통 해 시작 하면 됩 니 다.
총결산
위 에서 말씀 드 린 것 은 편집장 님 께 서 소개 해 주신 spring boot 의 war 와 jar 가방 의 사용 에 대한 상세 한 설명 입 니 다.여러분 께 도움 이 되 셨 으 면 좋 겠 습 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주세요.편집장 님 께 서 바로 답 해 드 리 겠 습 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.