slingfeature:include-artifact

Full name:

org.apache.sling:slingfeature-maven-plugin:1.1.20:include-artifact

Description:

This goal creates a Feature Model file that includes the Module Artifact as bundle (or extension) so that the Artifact can be added through a FM into a FM project. The FM file can be found in the 'build directory'/slingfeature-tmp folder. After a FM file is created successfully this file will be installed in the local Maven Repository as 'slingosgifeature' file under the Module's Maven Id location (group, artifact, version). This file can then later be used inside the 'aggregate-features' goal with: <includeArtifact> <groupId>org.apache.sling</groupId> <artifactId>org.apache.sling.test.feature</artifactId> <version>1.0.0</version> <classifier>my-test-classifier</classifier> <type>slingosgifeature</type> </includeArtifact> It also can add dependencies to the FM file if its scope is provided (normally that would be 'compile'). In addition a bundle start order can be set for these included dependency bundles. Finally any FM files inside the Source FM folder are embedded into the FM file. This allows to add extension files like 'repoinit' etc to be added to provide them with the module.

Attributes:

  • Requires a Maven project to be executed.
  • Requires dependency resolution of artifacts in scope: compile.
  • Binds by default to the lifecycle phase: prepare-package.

Required Parameters

Name Type Since Description
<features> File - Directory containing feature files
Default value is: src/main/features.
<testFeatures> File - Directory containing test feature files.
Default value is: src/test/features.

Optional Parameters

Name Type Since Description
<bundlesStartOrder> int - Start Order of all included Dependencies.
Default value is: -1.
User property is: bundleStartOrder.
<featuresExcludes> String - Comma separated list of excludes for the feature files. Feature files excluded by this configuration are not processed at all.
<featuresIncludes> String - Comma separated list of includes for the feature files in the configured directory. Only feature files specified by this include are processed.
Default value is: **/*.json.
<generatedFeatures> File - Directory containing generated feature files
<generatedFeaturesExcludes> String - Comma separated list of excludes for the generated feature files. Feature files excluded by this configuration are not processed at all.
<generatedFeaturesIncludes> String - Comma separated list of includes for the generated feature files in the configured directory. Only feature files specified by this include are processed.
Default value is: **/*.json.
<includeArtifactClassifier> String - Classifier of the feature the current artifact is included in. For simple projects a artifact classifier is not needed but in multi feature projects the classifier is used to find the appropriate feature.
User property is: includeArtifactClassifier.
<includeArtifactExtension> String - Name of the extension to include the artifact in. If not specified the artifact is included as a bundle.
<includeDependenciesWithScope> String[] - All listed dependency's scopes will be added to the descriptor.
User property is: includeDependenciesWithScope.
<jarStartOrder> int - The start level for the attached jar/bundle.
<skipAddFeatureDependencies> boolean - If set to true the artifacts from the feature are not as dependencies to the project.
Default value is: false.
<skipAddJarToFeature> boolean - If set to true the main jar artifact is not added to the feature.
Default value is: false.
<skipAddJarToTestFeature> boolean - If set to true the main jar artifact is not added to the test feature.
Default value is: false.
<skipAddTestFeatureDependencies> boolean - If set to true the artifacts from the test feature are not as dependencies to the project.
Default value is: true.
<testFeaturesExcludes> String - Comma separated list of excludes for the test features.
<testFeaturesIncludes> String - Comma separated list of includes for the test features.
Default value is: **/*.json.
<validateFeatures> boolean - If set to true the features are validated against the JSON schema.
Default value is: true.

Parameter Details

<bundlesStartOrder>

Start Order of all included Dependencies.
  • Type: int
  • Required: No
  • User Property: bundleStartOrder
  • Default: -1

<features>

Directory containing feature files
  • Type: java.io.File
  • Required: Yes
  • Default: src/main/features

<featuresExcludes>

Comma separated list of excludes for the feature files. Feature files excluded by this configuration are not processed at all.
  • Type: java.lang.String
  • Required: No

<featuresIncludes>

Comma separated list of includes for the feature files in the configured directory. Only feature files specified by this include are processed.
  • Type: java.lang.String
  • Required: No
  • Default: **/*.json

<generatedFeatures>

Directory containing generated feature files
  • Type: java.io.File
  • Required: No

<generatedFeaturesExcludes>

Comma separated list of excludes for the generated feature files. Feature files excluded by this configuration are not processed at all.
  • Type: java.lang.String
  • Required: No

<generatedFeaturesIncludes>

Comma separated list of includes for the generated feature files in the configured directory. Only feature files specified by this include are processed.
  • Type: java.lang.String
  • Required: No
  • Default: **/*.json

<includeArtifactClassifier>

Classifier of the feature the current artifact is included in. For simple projects a artifact classifier is not needed but in multi feature projects the classifier is used to find the appropriate feature.
  • Type: java.lang.String
  • Required: No
  • User Property: includeArtifactClassifier

<includeArtifactExtension>

Name of the extension to include the artifact in. If not specified the artifact is included as a bundle.
  • Type: java.lang.String
  • Required: No

<includeDependenciesWithScope>

All listed dependency's scopes will be added to the descriptor.
  • Type: java.lang.String[]
  • Required: No
  • User Property: includeDependenciesWithScope

<jarStartOrder>

The start level for the attached jar/bundle.
  • Type: int
  • Required: No

<skipAddFeatureDependencies>

If set to true the artifacts from the feature are not as dependencies to the project.
  • Type: boolean
  • Required: No
  • Default: false

<skipAddJarToFeature>

If set to true the main jar artifact is not added to the feature.
  • Type: boolean
  • Required: No
  • Default: false

<skipAddJarToTestFeature>

If set to true the main jar artifact is not added to the test feature.
  • Type: boolean
  • Required: No
  • Default: false

<skipAddTestFeatureDependencies>

If set to true the artifacts from the test feature are not as dependencies to the project.
  • Type: boolean
  • Required: No
  • Default: true

<testFeatures>

Directory containing test feature files.
  • Type: java.io.File
  • Required: Yes
  • Default: src/test/features

<testFeaturesExcludes>

Comma separated list of excludes for the test features.
  • Type: java.lang.String
  • Required: No

<testFeaturesIncludes>

Comma separated list of includes for the test features.
  • Type: java.lang.String
  • Required: No
  • Default: **/*.json

<validateFeatures>

If set to true the features are validated against the JSON schema.
  • Type: boolean
  • Required: No
  • Default: true