2016-09-18 12 views
0

을 변경메이븐 WAR 플러그인이 같은 <code>webapp</code>의 내용을 축약 한 후 프런트 엔드 자원 위치

WEB-INF 
assets 
favicon 
i18n 
scripts 
dist 
index.html 
//other things 

dist 안에 내가 스타일, 스크립트 등 ... 그러나 Maven WAR plugin 복사 모든 WAR로 압축 한 경우, WAR에는 중요한 소스가 포함됩니다. webResources에 대한 디렉토리를 변경하려고 시도했습니다.

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-war-plugin</artifactId> 
    <version>${maven-war-plugin.version}</version> 
    <configuration> 
     <failOnMissingWebXml>false</failOnMissingWebXml> 
     packagingExcludes>WEB-INF/lib/tomcat-*.jar</packagingExcludes> 
     <webResources> 
      <resource> 
       <filtering>true</filtering> 
       <directory>src/main/webapp/dist</directory> 
       <includes> 
        <include>**/*.xml</include> 
       </includes> 
      </resource> 
     </webResources> 
    </configuration> 
</plugin> 

아무 것도 변경되지 않았습니다. 아무도 이것으로 나를 도울 수 있습니까? 모든 대답에 대해 미리 감사드립니다.

답변

1

packagingExcludes은 쉼표로 구분되지 않는 리소스 목록을 허용합니다. 제외시킬 모든 디렉토리를 디렉토리에 추가하십시오 (예 :

<packagingExcludes> 
    WEB-INF/lib/tomcat-*.jar, 
    scripts 
</packagingExcludes> 

또한 리소스가 Maven 리소스 플러그인에 포함되어 있지 않은지 확인해야합니다.

수동으로 모든 제외 사항을 처리하는 대신 디렉토리에서 war 파일로 끝내지 않으려는 모든 파일을 이동하는 것이 좋습니다. 기본적으로 maven은 리소스를 기본적으로 포함 할 것으로 예상합니다. 예를 들어로 이동시킬 수 있습니다. src/main/uncompressedResources. 그렇게하면 그들은 여전히 ​​프로젝트에 참여할 수 있지만, maven은 기본적으로 프로젝트에 포함되지 않습니다.