@Mojo(name="assemble-repository", defaultPhase=PACKAGE) public class AssembleRepositoryMojo extends AbstractRepositoryMojo
Aggregates content into a p2 repository in ${project.build.directory}/repository
.
${project.build.outputDirectory}
to
${project.build.directory}/repository
. This allows to include additional files such
as index.html
or about files from src/main/resources
(or elsewhere)
into the p2 repository.${project.build.directory}/repository
runs recursively:
it starts with the content published in the current module, and traverses all artifacts that are
marked as included in already aggregated artifacts. (The following artifacts can include
other artifacts: categories, products, and features. Note: Dependencies with a strict version
range, i.e. a range which only matches exactly one version of an artifact, are also considered as
inclusions.)Modifier and Type | Field and Description |
---|---|
private boolean |
compress
Compress the repository index files content.xml and artifacts.xml.
|
private boolean |
createArtifactRepository
By default, this goal creates a p2 repository.
|
private boolean |
includeAllDependencies
By default, only (transitive) inclusions of the published artifacts are aggregated.
|
private boolean |
keepNonXzIndexFiles
If
xzCompress is true , whether jar or xml index files should be kept in
addition to XZ-compressed index files. |
private EquinoxServiceFactory |
p2 |
private java.util.Map<java.lang.String,java.lang.String> |
profileProperties
Additional properties against which p2 filters are evaluated while aggregating.
|
private java.lang.String |
repositoryName
The name attribute stored in the created p2 repository.
|
private RepositoryReferenceTool |
repositoryReferenceTool |
private boolean |
xzCompress
Add XZ-compressed repository index files.
|
Constructor and Description |
---|
AssembleRepositoryMojo() |
Modifier and Type | Method and Description |
---|---|
private void |
copyResources(java.io.File destination) |
void |
execute() |
protected RepositoryReferences |
getVisibleRepositories() |
getAssemblyRepositoryLocation, getBuildContext, getBuildDirectory, getProject, getProjectIdentities, getSession
@Parameter(defaultValue="true") private boolean createArtifactRepository
By default, this goal creates a p2 repository. Set this to false
if only a p2
metadata repository (without the artifact files) shall be created.
@Parameter(defaultValue="false") private boolean includeAllDependencies
By default, only (transitive) inclusions of the published artifacts are aggregated.
Set this parameter to true
to aggregate all transitive dependencies,
making the resulting p2 repository self-contained.
@Parameter(defaultValue="true") private boolean compress
Compress the repository index files content.xml and artifacts.xml.
@Parameter(defaultValue="true") private boolean xzCompress
Add XZ-compressed repository index files. XZ offers better compression ratios esp. for highly redundant file content.
@Parameter(defaultValue="true") private boolean keepNonXzIndexFiles
If xzCompress
is true
, whether jar or xml index files should be kept in
addition to XZ-compressed index files. This fallback provides backwards compatibility for
pre-Mars p2 clients which cannot read XZ-compressed index files.
@Parameter(defaultValue="${project.name}") private java.lang.String repositoryName
The name attribute stored in the created p2 repository.
@Parameter private java.util.Map<java.lang.String,java.lang.String> profileProperties
Additional properties against which p2 filters are evaluated while aggregating.
@Component private RepositoryReferenceTool repositoryReferenceTool
@Component private EquinoxServiceFactory p2
public void execute() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException
private void copyResources(java.io.File destination) throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionException
protected RepositoryReferences getVisibleRepositories() throws org.apache.maven.plugin.MojoExecutionException, org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoFailureException