tycho-p2-repository:assemble-maven-repository
Full name:
org.eclipse.tycho:tycho-p2-repository-plugin:4.0.8:assemble-maven-repository
Description:
This goals produces a "p2-maven-site" from the projects declared <dependencies> (and <dependencyManagement> if desired). A p2-maven-site is completely manageable by standard maven tools and has the following properties:
- The artifacts are not stored in the site itself but referenced as maven-coordinates, that means you don't have to upload your artifacts to a dedicated place, everything is fetched from the maven repository
 - The metadata of the page is attached to the current project with type=zip and classifier=p2site and could be deployed using standard maven techniques
 
The produced p2-maven-site can then be consumed by Tycho or PDE targets (m2eclipse is required for this), in the following way: A tycho-repository section:
<repository> <id>my-p2-maven-site <url>mvn:[groupId]:[artifactId]:[version]:zip:p2site <layout>p2 </repository>A target location of type software-site:
<location includeAllPlatforms="false" includeConfigurePhase="true" includeMode="planner" includeSource="true" type="InstallableUnit"> <repository location="mvn:[groupId]:[artifactId]:[version]:zip:p2site"/> -- list desired units here -- </location>
Attributes:
- Requires a Maven project to be executed.
 - Requires dependency resolution of artifacts in scope: 
compile. - The goal is not marked as thread-safe and thus does not support parallel builds.
 
Required Parameters
| Name | Type | Since | Description | 
|---|---|---|---|
<buildDirectory> | 
File | 
- | 
The output directory of the jar file By default this is the Maven "target/" directory. User Property: project.build.directory | 
Optional Parameters
| Name | Type | Since | Description | 
|---|---|---|---|
<categoryFile> | 
File | 
- | 
Location of the category definition. If the file does not exist, a generic category definition is generated including all bundles under one category Default: ${project.basedir}/category.xml | 
<categoryName> | 
String | 
- | 
Name for the automatically generated category Default: Bundles | 
<destination> | 
File | 
- | 
No description. Default: ${project.build.directory}/repository | 
<includeDependencies> | 
boolean | 
- | 
Flag whether declared <dependencies> of the projects should be included. Default: true | 
<includeManaged> | 
boolean | 
- | 
Flag that controls if <dependencyManagement> managed dependencies should be included, this is useful if your are using a BOM and like to include all materials in the update-site regardless of if they are explicitly included in the <dependencies> section Default: false | 
<includePGPSignature> | 
boolean | 
- | 
If enabled, PGP signatures of the artifacts are embedded in the P2 site to allow for additional verifications / trust decisions Default: false | 
<includeReactor> | 
boolean | 
- | 
Flag that controls if reactor projects should be considered, this is useful if your are simply like to make an update side of all your current reactor projects Default: false | 
<includeTransitiveDependencies> | 
boolean | 
- | 
Flag whether dependencies of the projects declared <dependencies> (and <dependencyManagement> if desired) should be included. If enabled this creates the maven equivalent of a self-contained P2 site Default: false | 
<keyServerRetry> | 
int | 
- | 
Key servers are sometimes busy, this configures the maximum amount of retries to fetch the public key before failing the build Default: 10 | 
<keyServerUrls> | 
List<String> | 
- | 
Configures the key servers that are used to fetch the public keys, if not specified, "https://keyserver.ubuntu.com/pks/lookup?op=get&search={0}" and "http://pgp.mit.edu/pks/lookup?op=get&search={0}" are used in this order. | 
<timeoutInSeconds> | 
int | 
- | 
No description. Default: 300 | 
Parameter Details
<buildDirectory>
The output directory of the jar file By default this is the Maven "target/" directory.
- Type: 
java.io.File - Required: 
report.plugin.goal.yes - User Property: 
project.build.directory 
<categoryFile>
Location of the category definition. If the file does not exist, a generic category definition is generated including all bundles under one category
- Type: 
java.io.File - Required: 
report.plugin.goal.no - Default: 
${project.basedir}/category.xml 
<categoryName>
Name for the automatically generated category
- Type: 
java.lang.String - Required: 
report.plugin.goal.no - Default: 
Bundles 
<destination>
No description.
- Type: 
java.io.File - Required: 
report.plugin.goal.no - Default: 
${project.build.directory}/repository 
<includeDependencies>
Flag whether declared <dependencies> of the projects should be included.
- Type: 
boolean - Required: 
report.plugin.goal.no - Default: 
true 
<includeManaged>
Flag that controls if <dependencyManagement> managed dependencies should be included, this is useful if your are using a BOM and like to include all materials in the update-site regardless of if they are explicitly included in the <dependencies> section
- Type: 
boolean - Required: 
report.plugin.goal.no - Default: 
false 
<includePGPSignature>
If enabled, PGP signatures of the artifacts are embedded in the P2 site to allow for additional verifications / trust decisions
- Type: 
boolean - Required: 
report.plugin.goal.no - Default: 
false 
<includeReactor>
Flag that controls if reactor projects should be considered, this is useful if your are simply like to make an update side of all your current reactor projects
- Type: 
boolean - Required: 
report.plugin.goal.no - Default: 
false 
<includeTransitiveDependencies>
Flag whether dependencies of the projects declared <dependencies> (and <dependencyManagement> if desired) should be included. If enabled this creates the maven equivalent of a self-contained P2 site
- Type: 
boolean - Required: 
report.plugin.goal.no - Default: 
false 
<keyServerRetry>
Key servers are sometimes busy, this configures the maximum amount of retries to fetch the public key before failing the build
- Type: 
int - Required: 
report.plugin.goal.no - Default: 
10 
<keyServerUrls>
Configures the key servers that are used to fetch the public keys, if not specified, "https://keyserver.ubuntu.com/pks/lookup?op=get&search={0}" and "http://pgp.mit.edu/pks/lookup?op=get&search={0}" are used in this order.
- Type: 
java.util.List<java.lang.String> - Required: 
report.plugin.goal.no 
<timeoutInSeconds>
No description.
- Type: 
int - Required: 
report.plugin.goal.no - Default: 
300 
