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.xmlpoints 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:
bundlesthat will contain your plugin projects. Currently contains two plugin projectscom.polarion.tycho.build.servicethat provides a velocity context key$myServiceaccessible from Polarion classic wiki and rich pages andcom.polarion.tycho.build.webthat uses the same service to generate an output accessible from http://[polarion_host]/polarion/polariontychotest.
featuresthat contains feature projects for aggregating a set of plugins. The example contains a single projectcom.polarion.tycho.build.helloworldsamplecontaining above plugins.relengthat containstarget-platformwhere you specify the Polarion platform or any additional target platform dependencies andupdate-sitethat 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