Demonstrates how Eclipse Tycho can be setup to build Polarion ALM plugins using Tycho POM-less feature.
- Polarion ALM (2410 was used)
- JDK as required by your Polarion installation (17 in this demo)
- Python 3
Maven wrappers have been provided to enable build execution without the user requiring a maven installation.
- Ensure that the
<location>
element inreleng/target-platform/target-platform.xml
points to your Polarion plugins path. - Execute
mvnw clean verify
(Windows) or./mvnw clean verify
(Linux) to run the build. - On build success, the plugins will be available at
releng/update-site/repo-to-runnable
.
The project is structured as follows:
bundles
that will contain your plugin projects. Currently contains two plugin projectscom.polarion.tycho.build.service
that provides a velocity context key$myService
accessible from Polarion classic wiki and rich pages andcom.polarion.tycho.build.web
that uses the same service to generate an output accessible from http://[polarion_host]/polarion/polariontychotest.
features
that contains feature projects for aggregating a set of plugins. The example contains a single projectcom.polarion.tycho.build.helloworldsample
containing above plugins.releng
that containstarget-platform
where you specify the Polarion platform or any additional target platform dependencies andupdate-site
that references the feature and will contain the plugins on successful build.
This project has been enabled for POM-less development, meaning that for the different tycho packaging types (bundles, features, update-site etc.),
you do not need to specify a dedicated pom.xml
. If you have special build requirements like additional maven build plugins, a pom.xml
may be specified (example: releng/update-site/pom.xml
).
If you only need to specify maven properties, then you can do so without a pom by adding pom.model.property.<property>=<value>
to the build.properties
file
(see Define Properties).
For example, when using maven-based SonarQube integration, you may need to specify which source folders SonarQube should scan.
Specifying pom.model.property.sonar.sources=src,webapp
in the build.properties
will then be equivalent to
<properties>
<sonar.sources>src,webapp</sonar.sources>
</properties>
in the pom file.
GitHub - eclipse-tycho/tycho
Karlsruher Institut für Technologie - Maven Tycho
Eclipse Tycho Release Notes
Eclipse Tycho Release Notes (2.4 and newer)
Vogella Eclipse Tycho Tutorial
Tycho/pomless
POM-less Tycho enhanced