Class SourceFeatureMojo

  • All Implemented Interfaces:
    org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

    @Mojo(name="source-feature",
          defaultPhase=PACKAGE)
    public class SourceFeatureMojo
    extends org.apache.maven.plugin.AbstractMojo
    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.
    • Constructor Detail

      • SourceFeatureMojo

        public SourceFeatureMojo()
    • Method Detail

      • execute

        public void execute()
                     throws org.apache.maven.plugin.MojoExecutionException,
                            org.apache.maven.plugin.MojoFailureException
        Throws:
        org.apache.maven.plugin.MojoExecutionException
        org.apache.maven.plugin.MojoFailureException
      • toStrictVersionRange

        protected String toStrictVersionRange​(String version)
      • addPlugin

        protected void addPlugin​(org.eclipse.tycho.model.Feature sourceFeature,
                                 org.eclipse.tycho.p2.resolver.facade.P2ResolutionResult result,
                                 org.eclipse.tycho.model.PluginRef pluginRef)
      • getOutputJarFile

        protected File getOutputJarFile()
      • setExcludes

        public void setExcludes​(org.codehaus.plexus.configuration.PlexusConfiguration excludes)
      • setPlugins

        public void setPlugins​(org.codehaus.plexus.configuration.PlexusConfiguration bundles)