2013-02-16 1 views
0

Eclipse 환경을 확장하는 플러그인에 Tycho를 사용하여 P2 저장소를 만들려고합니다. mvn 설치를 시도 할 때 생성되는 zip 파일은 포함시키지 않으려는 org.eclipse에서 플러그인을 추가합니다.tycho-p2-repository-plugin에 대상 플랫폼 종속성을 포함시키지 않으려면 어떻게해야합니까?

나는 이미 적어도 48메가바이트의 zip 파일을 작성하는 순간

<plugin> 
      <groupId>org.eclipse.tycho</groupId> 
      <artifactId>tycho-p2-repository-plugin</artifactId> 
      <configuration> 
        <includeAllDependencies>false</includeAllDependencies> 
      </configuration> 
    </plugin> 

(기본값은 이미 거짓에도 불구하고) 종속성을 포함하지 플러그인을 정의했습니다.

답변

1

eclipse-repository 패키징 유형으로 빌드 된 p2 저장소에는 모듈의 category.xml*.product 파일의 (과도기적 인) 포함 만 포함됩니다. "이행 적 포함"은이 파일에 나열된 모든 것 및 포함 된 기능에 포함 된 모든 것입니다. 기본적으로 참조 (예 : 번들 매니페스트)되는 이슈는 이 아니며이 포함됩니다.

따라서 p2 저장소에 아티팩트가 너무 많이 포함되어 있으면 아티팩트 또는 아티팩트가 포함 된 기능을 포함하지 마십시오.

p2 저장소로 들어 가지 않아야하는 특정 항목을 포함해야하는 RCP를 작성하려는 경우 제품 정의를 별도의 eclipse-repository 모듈로 이동하십시오.

0

<plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-antrun-plugin</artifactId> 
      <version>1.6</version> 
      <executions> 
       <execution> 
        <id>prepare-feature-distribution</id> 
        <phase>package</phase> 
        <goals> 
         <goal>run</goal> 
        </goals> 
        <configuration> 
         <tasks> 
          <mkdir 
           dir="${basedir}/target/${project.parent.artifactId}/${feature.version}" /> 
          <!-- Copy core and targetPlatform jars --> 
          <copy 
           todir="${basedir}/target/${project.parent.artifactId}/${feature.version}"> 
           <fileset dir="${basedir}/target/repository/plugins"> 
            <exclude name="ch.qos.logback.slf4j*.jar" /> 
            <exclude name="javax.xml.bind*.jar" /> 
            <exclude name="org.apache.xerces*.jar" /> 
            <exclude name="org.apache.xml.resolver*.jar" /> 
            <exclude name="org.apache.xml.serializer*.jar" /> 
            <exclude name="org.eclipse.equinox.common*.jar" /> 
            <exclude name="org.eclipse.equinox.ds*.jar" /> 
            <exclude name="org.eclipse.equinox.launcher.win32.win32.x86*.jar" /> 
            <exclude name="org.eclipse.equinox.launcher*.jar" /> 
            <exclude name="org.eclipse.equinox.util*.jar" /> 
            <exclude name="org.eclipse.net4j.jms.api*.jar" /> 
            <exclude name="org.eclipse.osgi.services*.jar" /> 
            <exclude name="org.eclipse.osgi*.jar" /> 
           </fileset> 
          </copy> 
         </tasks> 
        </configuration> 
       </execution> 
      </executions> 
     </plugin> 
시도