2013-06-12 3 views
0

Logback 로거를 사용하고있는 Maven (Java) 프로젝트에 logback.xml 로거를 구성하기 위해 파일을 사용하고 있습니다. 현재 logback.xmlsrc/main/resources에 거주하고 있습니다. 이렇게하면 Eclipse에서 프로젝트를 실행할 때 해당 로거 구성이 자동으로 jar 파일에 포함되어 런타임에 사용됩니다.로버 설정을 메이븐 어셈블리에 별도의 파일로 포함하는 방법

그러나 나는 또한 로거 구성 (별도의 conf/ 디렉토리에, 예를 들어) jar 파일 외부에서 사용할 수 있어야하는 내 프로젝트의 바이너리 배포판 (어셈블리 플러그인을 사용하여)를 만들려고합니다. 나는 이것을 설정하는 최선의 방법으로 고심하고있다. 별도로 파일을 포함

(나는 그것을위한 조립 기술자에 간단한 fileSet 또는 file 지시어를 사용할 수 있습니다)이 문제가되지 않습니다,하지만 난 어셈블리가 을 수행 내 프로젝트에 대한 jar 파일을 생성 할 수있는 방법이 확실하지 아니 파일을 logback.xml 포함되어 있지 않습니다. 내가 생각할 수있는

유일한 방법은 그래서이 항아리에 포함되지 않습니다 src/main/resources/에서 파일을 이동하고, 대신 이클립스의 런타임 클래스 경로에 포함되어 있는지 확인하기 위해 target/ 디렉토리에 추가하는 것입니다 (그리고 그런 다음 어셈블리 설명자에 명시 적으로 복사합니다. 나는 어떤 체크인 파일도 target/에 갖고 싶어하지 않으므로, 이것을하기위한 더 좋은 방법이 있기를 바랬다.

답변

0

나는 그것을 알아 냈습니다. 오히려 간단합니다.

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jar-plugin</artifactId> 
      <version>2.4</version> 
      <configuration> 
       <excludes> 
        <exclude>**/logback.xml</exclude> 
       </excludes> 
      </configuration> 
     </plugin> 

이 파일은 여전히 ​​(target/classes에서) Eclipse의 런타임 클래스 경로에 사용할 수 있지만,이 경우에 포함되지 않습니다 있는지 확인합니다 :

나는 내 프로젝트의 POM에 maven-jar-plugin에 대한 구성을 추가하여 고정 내 프로젝트를 위해 항아리가 생산됩니다.

관련 문제