2017-09-14 9 views
0

Maven으로 빌드 된 Debian jessie에서 Java 8과 함께 Spring 부트 1.5.6을 사용합니다.가벼운 항아리가있는 패키지 스프링 부트 응용 프로그램은 데몬으로 실행됩니다.

생성 된 jar는 큰 뚱뚱한 70Mo jar입니다. 데몬으로 사용하면 문제가 없습니다.

lib 폴더의 종속성 jar 파일을 사용하여 더 가벼운 jar 파일을 생성하는 방법은 무엇입니까? 여기

현재의 pom.xml 내가 사용하고 다음 unprecise과 오답에 대한

https://gist.github.com/ebuildy/46e42c06d344707c823d0320d78eea1c

답변

0

사과 : 기본, 스프링 부팅 받는다는 - 플러그인 "제공"준수하지 않는함으로써 을, 모든 종속성을 포함합니다.

나는 연결된 "얇은"확장 기능을 사용해 보았습니다.하지만 그 중 하나가 제대로 작동하지 않았습니다.

내 원래의 게시물로 돌아 가면, 그 생각은 옳았습니다 : PropertiesLauncher를 사용하여 JAR이 살고있는 디렉토리를 가리 키도록하십시오.

  1. 이 런처를 트리거해야합니다. 예를 들어 spring-boot-maven-plugin의 레이아웃 유형 "DIR"을 사용하여이 작업을 수행 할 수 있습니다.

  2. 또한 JAR을 보유하는 디렉토리 (또는 디렉토리)를 가리키는 등록 정보를 포함하는 "loader.properties"구성 파일을 제공해야합니다.

  3. 종속성을 전혀 또는 일부만 포함하는 Spring Boot Executable JAR을 제공하려는 경우 원하지 않는 JAR을 제외해야합니다. 여러 가지 솔루션이 있습니다. 즉, 즉시 실행 가능 JAR을 생성 한 후 수정하고 범위별로 필터링하도록 spring-boot-maven-plugin을 향상 시키려면 바로 사용 가능한 기능을 사용하십시오. 나는 마지막 해결책을 선택했다.

전체 목록은 GIST을 참조하십시오.

+0

감사합니다. 이미 제공되는 스코프를 사용하여 pom.xml을 추가했지만 여전히 팻 항아리를 사용했는데 구성을 잊어 버렸을 수 있습니까? –