2017-11-21 2 views
0

maven에서 tycho-compiler-plugin을 사용하여 Eclipse 플러그인을 빌드하려고합니다. p2 repo에서 많은 번들 종속성을 해결했습니다.tycho를 통해 빌드하는 동안 Lib 폴더가 Eclipse 플러그인으로 패키징됩니다.

Bundle-ClassPath: ., 
    lib/test1.jar, 
    lib/test2.jar 

이 항아리는 치어가 존재하는 루트 레벨 즉에 존재 lib 폴더에 존재하는 - 나는 MANIFEST.MF에 번들 클래스 패스에 존재하는 일부 항아리 의존성을 가지고있다.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>com.test</groupId> 
    <artifactId>com.test.plugin</artifactId> 
    <version>0.0.0</version> 
    <packaging>eclipse-plugin</packaging> 

    <repositories> 
     <repository> 
     <id>Mars</id> 
     <layout>p2</layout> 
     <url>file:///E:/repo/eclipseRepo/</url> 
     </repository> 
    </repositories> 
    <build> 
     <directory>../../../../target</directory> 
     <sourceDirectory>src</sourceDirectory> 
     <plugins> 
     <plugin> 
      <groupId>org.eclipse.tycho</groupId> 
      <artifactId>tycho-maven-plugin</artifactId> 
      <version>0.25.0</version> 
      <extensions>true</extensions> 
     </plugin> 
     <plugin> 
      <groupId>org.eclipse.tycho</groupId> 
      <artifactId>tycho-compiler-plugin</artifactId> 
      <version>0.25.0</version> 
     </plugin> 
     <plugin> 
      <groupId>org.eclipse.tycho</groupId> 
      <artifactId>tycho-packaging-plugin</artifactId> 
      <version>0.25.0</version> 
      <configuration> 
       <buildDirectory>../../../../plugin</buildDirectory> 
      </configuration> 
     </plugin> 
    </plugins> 
    </build> 
</project> 

이제 TI가 제대로 이클립스 플러그인을 기반으로하지만, 포장하면서 또한 lib 폴더를 포함 -

POM 파일처럼 보인다. 첨부 된 병 화면 캡처 - enter image description here jar에서이 lib 폴더를 제외하고 싶습니다. 제외하기 위해 tycho-packaging-jar 플러그인에서 구성을 시도했습니다. 하지만 일하지 않아. 그것을 제외시키는 방법?

답변

1

현재 프로젝트의 기본 디렉토리 외부에 <directory> 또는 <buildDirectory>을 사용하면 상당히 비표준으로 보입니다. 사실, 나는 이들 중 하나를 명시 적으로 구성 할 필요가 없었습니다. 즉 <sourceDirectory>입니다. 이 파일은 build.properties 파일을위한 것으로, Eclipse PDE와 Tycho에서 이러한 파일을 구성하는 기본 방법입니다.

스크린 샷에서 보니 build.properties 파일이없는 것처럼 보입니다. 나는 POM 요소가 아닌 its properties을 통해 다양한 위치를 구성 할 것을 제안합니다. this example 행에있는 항목으로 bin.includesbin.excludes으로 JAR 흠도를 처리합니다.

+0

감사합니다. build.properties를 편집하면 문제가 해결되었습니다. – Disha

관련 문제