Plugin Documentation

This report describes goals, parameters details, requirements and sample usage of this plugin.

Goals

Goals available for this plugin:

Goal Description
tycho-source:feature-source Generates a source feature for projects of packaging type eclipse-feature. By default, the generated source feature
  • Declares feature id <originalFeatureId>.source
  • Declares feature label "<originalFeatureLabel> Developer Resources"
  • If present, reuses feature provider, description, copyright and license as well as respective URLs from <originalFeature>
  • Includes all plugins included by <originalFeature>, but each with .source appended to each plugin id
  • Includes all features included by <originalFeature>, but each with .source appended to each feature id
  • Includes the original feature. This ensures that binaries and corresponding sources match.
Source feature generation can be customized by adding files under path sourceTemplateFeature/. Files added here will be added to the root of the source feature jar. Especially, if file sourceTemplateFeature/feature.properties is found, values in this file override values of respective keys in <originalFeature>/feature.properties.
tycho-source:generate-pde-source-header This mojo adds the required headers to a source artifact for it to be used in PDE as a source bundle
tycho-source:plugin-source Goal to create a JAR-package containing all the source files of a osgi project.

System Requirements

The following specifies the minimum requirements to run this Maven plugin:

Maven 3.9.6
JDK 17

System Requirements History

The following specifies the minimum requirements to run this Maven plugin for historical versions:

Plugin Version Maven JDK
from 4.0.0 to 4.0.10 3.9.0 17
from 3.0.0 to 3.0.5 - 17
from 2.0.0 to 2.7.5 - 11
from 0.25.0 to 1.7.0 - 8
from 0.23.0 to 0.24.0 - 7
0.22.0 - 6
from 0.12.0 to 0.21.0 - 5

Usage

You should specify the version in your project's plugin configuration:

<project>
  ...
  <build>
    <!-- To define the plugin version in your parent POM -->
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-source-plugin</artifactId>
          <version>5.0.0-SNAPSHOT</version>
        </plugin>
        ...
      </plugins>
    </pluginManagement>
    <!-- To use the plugin goals in your POM or parent POM -->
    <plugins>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-source-plugin</artifactId>
      </plugin>
      ...
    </plugins>
  </build>
  ...
</project>

For more information, see "Guide to Configuring Plug-ins"