Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "Tycho/Additional Tools"
< Tycho
m (→tycho-p2-extras-plugin) |
|||
Line 8: | Line 8: | ||
Mirror the org.eclipse.rcp feature from the Indigo p2 repository to target/repository. | Mirror the org.eclipse.rcp feature from the Indigo p2 repository to target/repository. | ||
− | Filter the | + | Filter the platform-specific fragments to only include linux/gtk/x86_64 os/ws/arch. |
<pre> | <pre> | ||
− | + | <build> | |
− | + | <plugins> | |
− | + | <plugin> | |
− | + | <groupId>org.eclipse.tycho.extras</groupId> | |
− | + | <artifactId>tycho-p2-extras-plugin</artifactId> | |
− | + | <version>${tycho-version}</version> | |
− | + | <executions> | |
− | + | <execution> | |
− | + | <phase>prepare-package</phase> | |
− | + | <goals> | |
− | + | <goal>mirror</goal> | |
− | + | </goals> | |
− | + | </execution> | |
− | + | </executions> | |
− | + | <configuration> | |
− | + | <source> | |
− | + | <!-- source repositori(es) to mirror from --> | |
− | + | <repository> | |
− | + | <url>http://download.eclipse.org/releases/indigo/</url> | |
− | + | <layout>p2</layout> | |
− | + | </repository> | |
− | + | </source> | |
− | + | <!-- starting from here all configuration parameters are optional --> | |
− | + | <!-- List of IUs to mirror. If omitted, allIUs will be mirrored. --> | |
− | + | <!-- Omitted IU version element means latest version of the IU --> | |
− | + | <ius> | |
− | + | <iu> | |
− | + | <id>org.eclipse.rcp.feature.group</id> | |
− | + | </iu> | |
− | + | </ius> | |
− | + | <!-- The destination directory to mirror to. --> | |
− | + | <destination>${project.build.directory}/mirror</destination> | |
− | + | <!-- Whether only strict dependencies should be followed. --> | |
− | + | <!-- "strict" means perfect version match --> | |
− | + | <followStrictOnly>false</followStrictOnly> | |
− | + | <!-- Whether or not to follow optional requirements. --> | |
− | + | <includeOptional>true</includeOptional> | |
− | + | <!-- Whether or not to follow non-greedy requirements. --> | |
− | + | <includeNonGreedy>true</includeNonGreedy> | |
− | + | <!-- filter properties. E.g. filter only one platform --> | |
− | + | <filter> | |
− | + | <osgi.os>linux</osgi.os> | |
− | + | <osgi.ws>gtk</osgi.ws> | |
− | + | <osgi.arch>x86_64</osgi.arch> | |
− | + | </filter> | |
− | + | <!-- Whether to filter the resulting set of IUs to only --> | |
− | + | <!-- include the latest version of each IU --> | |
− | + | <latestVersionOnly>false</latestVersionOnly> | |
− | + | <!-- don't mirror artifacts, only metadata --> | |
− | + | <mirrorMetadataOnly>false</mirrorMetadataOnly> | |
− | + | <!-- whether to compress the target repo --> | |
− | + | <compress>true</compress> | |
− | + | <!-- whether to append to the target repo content --> | |
− | + | <append>true</append> | |
− | + | </configuration> | |
− | + | </plugin> | |
− | + | </plugins> | |
− | + | </build> | |
</pre> | </pre> | ||
Revision as of 11:32, 19 August 2011
The Tycho project provides additional tools that may be useful when working with Tycho.
tycho-p2-extras-plugin
The mirror goal of the tycho-p2-extras-plugin copies installable units (plus their corresponding artifacts) from one or more p2 repositories into the build directory. This goal is available since version 0.13.0.
Example usage:
Mirror the org.eclipse.rcp feature from the Indigo p2 repository to target/repository. Filter the platform-specific fragments to only include linux/gtk/x86_64 os/ws/arch.
<build> <plugins> <plugin> <groupId>org.eclipse.tycho.extras</groupId> <artifactId>tycho-p2-extras-plugin</artifactId> <version>${tycho-version}</version> <executions> <execution> <phase>prepare-package</phase> <goals> <goal>mirror</goal> </goals> </execution> </executions> <configuration> <source> <!-- source repositori(es) to mirror from --> <repository> <url>http://download.eclipse.org/releases/indigo/</url> <layout>p2</layout> </repository> </source> <!-- starting from here all configuration parameters are optional --> <!-- List of IUs to mirror. If omitted, allIUs will be mirrored. --> <!-- Omitted IU version element means latest version of the IU --> <ius> <iu> <id>org.eclipse.rcp.feature.group</id> </iu> </ius> <!-- The destination directory to mirror to. --> <destination>${project.build.directory}/mirror</destination> <!-- Whether only strict dependencies should be followed. --> <!-- "strict" means perfect version match --> <followStrictOnly>false</followStrictOnly> <!-- Whether or not to follow optional requirements. --> <includeOptional>true</includeOptional> <!-- Whether or not to follow non-greedy requirements. --> <includeNonGreedy>true</includeNonGreedy> <!-- filter properties. E.g. filter only one platform --> <filter> <osgi.os>linux</osgi.os> <osgi.ws>gtk</osgi.ws> <osgi.arch>x86_64</osgi.arch> </filter> <!-- Whether to filter the resulting set of IUs to only --> <!-- include the latest version of each IU --> <latestVersionOnly>false</latestVersionOnly> <!-- don't mirror artifacts, only metadata --> <mirrorMetadataOnly>false</mirrorMetadataOnly> <!-- whether to compress the target repo --> <compress>true</compress> <!-- whether to append to the target repo content --> <append>true</append> </configuration> </plugin> </plugins> </build>
The mojo has the same parameters as the p2.mirror ant task