tycho-p2-director:director
Full name:
org.eclipse.tycho:tycho-p2-director-plugin:5.0.0:director
Description:
Allows to run the director application to manage Eclipse Installations. This mojo can be used in two ways
- As a commandline invocation passing arguments as properties using
mvn org.eclipse.tycho:tycho-p2-director-plugin:director -Ddestination=[target] ... -D... - as an execution inside a pom
<plugin> <groupId>org.eclipse.tycho</groupId> <artifactId>tycho-p2-director-plugin</artifactId> <version>${tycho-version}</version> <executions> <execution> <goals> <goal>director</goal> </goals> <phase>package</phase> <configuration> <destination>...</destination> ... other arguments ... </configuration> </execution> </executions> </plugin>
Attributes:
- The goal is thread-safe and supports parallel builds.
Required Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<destination> |
File |
- |
The folder in which the targeted product is located.
Note: This applies special handling for macOS (
eclipse -application org.eclipse.equinox.p2.director in order to simplify cross-mojo workflows within Tycho (e.g. the same logic is applied by tycho-surefire-plugin:integration-test.User Property: destination |
Optional Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<artifactrepositories> |
String |
- |
comma separated list of URLs denoting artifact repositories. User Property: artifactrepositoriesAlias: artifactrepository |
<bundlepool> |
File |
- |
The location where the plug-ins and features will be stored. Effective only when a new profile is created. User Property: bundlepool |
<downloadOnly> |
boolean |
- |
Only download the artifacts. User Property: downloadOnly |
<flavor> |
String |
- |
Defines what flavor to use for a newly created profile. User Property: flavor |
<followReferences> |
boolean |
- |
Follow repository references. User Property: followReferences |
<includeProjectRepository> |
boolean |
- |
If specified, the current project and its artifacts are included as part of the repository that is used to install units |
<install> |
List<DirectorMojo$IU> |
- |
Alternative way to specify the IU to install in a more declarative (but also verbose) way, example:
<install>
<iu>
<id>...</id>
<version>...optional version...</id>
<feature>true/false</feature> <!-- optional if true .feature.group is automatically added to the id -->
</install>
|
<installFeatures> |
boolean |
- |
No description. Default: trueUser Property: installFeatures |
<installIUs> |
String |
- |
comma separated list of IUs to install, each entry in the list is in the form User Property: installIUsAlias: installIU |
<installSources> |
boolean |
- |
No description. Default: false |
<iuProfileproperties> |
File |
- |
Path to a properties file containing a list of IU profile properties to set. User Property: iuProfileproperties |
<list> |
boolean |
- |
Lists all IUs found in the given repositories. IUs can optionally be listed. Each entry in the list is in the form User Property: list |
<listFormat> |
String |
- |
Formats the list of IUs according to the given string. Use ${property} for variable parts, e.g. ${org.eclipse.equinox.p2.name} for the IU's name. ID and version of an IU are available through ${id} and ${version}. User Property: listFormat |
<listInstalledRoots> |
boolean |
- |
Lists all root IUs found in the given profile. Each entry in the list is in the form User Property: listInstalledRoots |
<listTags> |
boolean |
- |
List the tags available User Property: listTags |
<metadatarepositories> |
String |
- |
comma separated list of URLs denoting meta-data repositories User Property: metadatarepositoriesAlias: metadatarepository |
<p2arch> |
String |
- |
The architecture to use when the profile is created.
If this is specified, If none of them are specified, the values are derived from the running environment. User Property: p2.arch |
<p2nl> |
String |
- |
The language to use when the profile is created. User Property: p2.nl |
<p2os> |
String |
- |
The OS to use when the profile is created.
If this is specified, If none of them are specified, the values are derived from the running environment. User Property: p2.os |
<p2ws> |
String |
- |
The windowing system to use when the profile is created.
If this is specified, If none of them are specified, the values are derived from the running environment. User Property: p2.ws |
<profile> |
String |
- |
Defines what profile to use for the actions. Default: DefaultProfileUser Property: profile |
<profileproperties> |
String |
- |
A list of properties in the form key=value pairs. Effective only when a new profile is created. For example org.eclipse.update.install.features=true to install the features into the product.User Property: profileproperties |
<properties> |
Map<String,String> |
- |
Additional profile properties to set when materializing the product |
<purgeHistory> |
boolean |
- |
Remove the history of the profile registry. User Property: purgeHistory |
<repositories> |
String |
- |
comma separated list denoting co-located meta-data and artifact repositories User Property: repositoriesAlias: repository |
<revert> |
String |
- |
comma separated list of numbers, revert the installation to a previous state. The number representing the previous state of the profile as found in p2/org.eclipse.equinox.p2.engine/ User Property: revert |
<roaming> |
boolean |
- |
Indicates that the product resulting from the installation can be moved. Effective only when a new profile is created. User Property: roaming |
<shared> |
String |
- |
Use a shared location for the install. The User Property: shared |
<tag> |
String |
- |
Tag the provisioning operation for easy referencing when reverting. User Property: tag |
<trustSignedContentOnly> |
boolean |
- |
Whether to trust each artifact only if it is jar-signed or PGP-signed. User Property: trustSignedContentOnly |
<trustedAuthorities> |
String |
- |
comma separated list of the authorities from which repository content, including repository metadata, is trusted. An empty value will reject all remote connections. User Property: trustedAuthorities |
<trustedCertificates> |
String |
- |
The SHA-256 'fingerprints' of unanchored certficates to trust as signers of artifacts. An empty value will reject all unanchored certificates. User Property: trustedCertificates |
<trustedPGPKeys> |
String |
- |
comma separated list of the fingerprints of PGP keys to trust as signers of artifacts. An empty value will reject all PGP keys. User Property: trustedPGPKeys |
<uninstall> |
List<DirectorMojo$IU> |
- |
Alternative way to specify the IU to uninstall in a more declarative (but also verbose) way, example:
<install>
<iu>
<id>...</id>
<version>...optional version...</id>
<feature>true/false</feature> <!-- optional if true .feature.group is automatically added to the id -->
</install>
|
<uninstallIUs> |
String |
- |
comma separated list of IUs to install, each entry in the list is in the form User Property: uninstallIUsAlias: uninstallIU |
<verboseTrust> |
boolean |
- |
Whether to print detailed information about the content trust. User Property: verboseTrust |
<verifyOnly> |
boolean |
- |
Only verify that the actions can be performed. Don't actually install or remove anything. User Property: verifyOnly |
Parameter Details
<artifactrepositories>
- Type:
java.lang.String - Required:
No - User Property:
artifactrepositories - Alias:
artifactrepository
<bundlepool>
- Type:
java.io.File - Required:
No - User Property:
bundlepool
<destination>
Note: This applies special handling for macOS (p2os macosx) and behaves as follows:
- If
destinationalready conforms to the full app bundle layout (/path/to/Foo.app/Contents/Eclipse),destinationis used as-is. - If
destinationpoints to the root of an app bundle (/path/to/Foo.app),Contents/Eclipseis appended and the path and/path/to/Foo.app/Contents/Eclipseis used. - Otherwise, i.e. if no app bundle path is given (
/path/to/work), a valid app bundle path is appended, and the path/path/to/work/Eclipse.app/Contents/Eclipseis used.
eclipse -application org.eclipse.equinox.p2.director in order to simplify cross-mojo workflows within Tycho (e.g. the same logic is applied by tycho-surefire-plugin:integration-test.- Type:
java.io.File - Required:
Yes - User Property:
destination
<downloadOnly>
- Type:
boolean - Required:
No - User Property:
downloadOnly
<flavor>
- Type:
java.lang.String - Required:
No - User Property:
flavor
<followReferences>
- Type:
boolean - Required:
No - User Property:
followReferences
<includeProjectRepository>
- Type:
boolean - Required:
No
<install>
<install>
<iu>
<id>...</id>
<version>...optional version...</id>
<feature>true/false</feature> <!-- optional if true .feature.group is automatically added to the id -->
</install>
- Type:
java.util.List<org.eclipse.tycho.plugins.p2.director.DirectorMojo$IU> - Required:
No
<installFeatures>
- Type:
boolean - Required:
No - User Property:
installFeatures - Default:
true
<installIUs>
- Type:
java.lang.String - Required:
No - User Property:
installIUs - Alias:
installIU
<installSources>
- Type:
boolean - Required:
No - Default:
false
<iuProfileproperties>
- Type:
java.io.File - Required:
No - User Property:
iuProfileproperties
<list>
- Type:
boolean - Required:
No - User Property:
list
<listFormat>
- Type:
java.lang.String - Required:
No - User Property:
listFormat
<listInstalledRoots>
- Type:
boolean - Required:
No - User Property:
listInstalledRoots
<listTags>
- Type:
boolean - Required:
No - User Property:
listTags
<metadatarepositories>
- Type:
java.lang.String - Required:
No - User Property:
metadatarepositories - Alias:
metadatarepository
<p2arch>
If this is specified, p2os and p2ws must also be specified for consistency.
If none of them are specified, the values are derived from the running environment.
- Type:
java.lang.String - Required:
No - User Property:
p2.arch
<p2nl>
- Type:
java.lang.String - Required:
No - User Property:
p2.nl
<p2os>
If this is specified, p2ws and p2arch must also be specified for consistency.
If none of them are specified, the values are derived from the running environment.
- Type:
java.lang.String - Required:
No - User Property:
p2.os
<p2ws>
If this is specified, p2os and p2arch must also be specified for consistency.
If none of them are specified, the values are derived from the running environment.
- Type:
java.lang.String - Required:
No - User Property:
p2.ws
<profile>
- Type:
java.lang.String - Required:
No - User Property:
profile - Default:
DefaultProfile
<profileproperties>
org.eclipse.update.install.features=true to install the features into the product.- Type:
java.lang.String - Required:
No - User Property:
profileproperties
<properties>
- Type:
java.util.Map<java.lang.String, java.lang.String> - Required:
No
<purgeHistory>
- Type:
boolean - Required:
No - User Property:
purgeHistory
<repositories>
- Type:
java.lang.String - Required:
No - User Property:
repositories - Alias:
repository
<revert>
- Type:
java.lang.String - Required:
No - User Property:
revert
<roaming>
- Type:
boolean - Required:
No - User Property:
roaming
<shared>
- Type:
java.lang.String - Required:
No - User Property:
shared
<tag>
- Type:
java.lang.String - Required:
No - User Property:
tag
<trustSignedContentOnly>
- Type:
boolean - Required:
No - User Property:
trustSignedContentOnly
<trustedAuthorities>
- Type:
java.lang.String - Required:
No - User Property:
trustedAuthorities
<trustedCertificates>
- Type:
java.lang.String - Required:
No - User Property:
trustedCertificates
<trustedPGPKeys>
- Type:
java.lang.String - Required:
No - User Property:
trustedPGPKeys
<uninstall>
<install>
<iu>
<id>...</id>
<version>...optional version...</id>
<feature>true/false</feature> <!-- optional if true .feature.group is automatically added to the id -->
</install>
- Type:
java.util.List<org.eclipse.tycho.plugins.p2.director.DirectorMojo$IU> - Required:
No
<uninstallIUs>
- Type:
java.lang.String - Required:
No - User Property:
uninstallIUs - Alias:
uninstallIU
<verboseTrust>
- Type:
boolean - Required:
No - User Property:
verboseTrust
<verifyOnly>
- Type:
boolean - Required:
No - User Property:
verifyOnly
