springboot 의 war 와 jar 패키지 사용 에 대한 자세 한 설명

5378 단어 springbootwarjar
이 편 은 Maven 을 통 해 springboot 에서 war 가방 과 jar 가방 을 싸 는 것 을 공유 합 니 다.war 는 일반적으로 생 성 된 후 tomcat 의 webapps 아래 에 직접 놓 으 면 됩 니 다.tomcat 설정 은 자동 으로 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 가방 의 사용 에 대한 상세 한 설명 입 니 다.여러분 께 도움 이 되 셨 으 면 좋 겠 습 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주세요.편집장 님 께 서 바로 답 해 드 리 겠 습 니 다!

좋은 웹페이지 즐겨찾기