@Mojo(name="bnd-process",
defaultPhase=PROCESS_CLASSES,
requiresDependencyResolution=COMPILE)
public class BndMavenPlugin
extends org.apache.maven.plugin.AbstractMojo
Modifier and Type | Field and Description |
---|---|
private java.lang.String |
bnd
Bnd instructions for this project specified directly in the pom file.
|
private java.lang.String |
bndfile
File path to a bnd file containing bnd instructions for this project.
|
private org.sonatype.plexus.build.incremental.BuildContext |
buildContext |
private java.io.File |
classesDir |
private boolean |
includeClassesDir |
private static org.slf4j.Logger |
logger |
private static java.lang.String |
MANIFEST_LAST_MODIFIED |
private java.io.File |
manifestPath |
private static java.lang.String |
MARKED_FILES |
private org.apache.maven.plugin.MojoExecution |
mojoExecution |
private java.io.File |
outputDir |
private static java.lang.String |
PACKAGING_JAR |
private static java.lang.String |
PACKAGING_WAR |
private java.util.List<java.lang.String> |
packagingTypes |
private org.apache.maven.project.MavenProject |
project |
private java.io.File |
propertiesFile |
private java.util.List<org.apache.maven.model.Resource> |
resources |
private org.apache.maven.settings.Settings |
settings |
private boolean |
skip |
private java.io.File |
sourceDir |
private java.io.File |
targetDir |
private static java.lang.String |
TSTAMP |
private java.io.File |
warOutputDir |
Constructor and Description |
---|
BndMavenPlugin() |
Modifier and Type | Method and Description |
---|---|
private static java.lang.StringBuilder |
addHeaderAttribute(java.lang.StringBuilder builder,
java.lang.String key,
java.lang.String value,
char separator) |
private static java.lang.StringBuilder |
addHeaderValue(java.lang.StringBuilder builder,
java.lang.String value,
char separator) |
private org.codehaus.plexus.util.xml.Xpp3Dom |
defaultConfiguration() |
void |
execute() |
private void |
expandJar(Jar jar,
java.io.File dir) |
private java.util.Optional<org.codehaus.plexus.util.xml.Xpp3Dom> |
getConfiguration(java.util.List<org.apache.maven.model.Plugin> plugins) |
private void |
loadParentProjectProperties(Builder builder,
org.apache.maven.project.MavenProject currentProject) |
private java.io.File |
loadProjectProperties(Builder builder,
org.apache.maven.project.MavenProject bndProject,
org.apache.maven.project.MavenProject pomProject,
org.codehaus.plexus.util.xml.Xpp3Dom configuration) |
private java.io.File |
loadProperties(Builder builder) |
private boolean |
manifestOutOfDate() |
private void |
reportErrorsAndWarnings(Builder builder) |
private static final org.slf4j.Logger logger
private static final java.lang.String MANIFEST_LAST_MODIFIED
private static final java.lang.String MARKED_FILES
private static final java.lang.String PACKAGING_JAR
private static final java.lang.String PACKAGING_WAR
private static final java.lang.String TSTAMP
@Parameter(defaultValue="${project.build.directory}", readonly=true) private java.io.File targetDir
@Parameter(defaultValue="${project.build.sourceDirectory}", readonly=true) private java.io.File sourceDir
@Parameter(defaultValue="${project.build.resources}", readonly=true) private java.util.List<org.apache.maven.model.Resource> resources
@Parameter(defaultValue="${project.build.outputDirectory}") private java.io.File classesDir
@Parameter(defaultValue="true") private boolean includeClassesDir
@Parameter(defaultValue="${project.build.outputDirectory}") private java.io.File outputDir
@Parameter(defaultValue="${project.build.directory}/${project.build.finalName}") private java.io.File warOutputDir
@Parameter(defaultValue="${project.build.outputDirectory}/META-INF/MANIFEST.MF") private java.io.File manifestPath
@Parameter(defaultValue="${project}", required=true, readonly=true) private org.apache.maven.project.MavenProject project
@Parameter(defaultValue="${settings}", readonly=true) private org.apache.maven.settings.Settings settings
@Parameter(defaultValue="${mojoExecution}", readonly=true) private org.apache.maven.plugin.MojoExecution mojoExecution
@Parameter(property="bnd.skip", defaultValue="false") private boolean skip
@Parameter(property="bnd.packagingTypes", defaultValue="jar,war") private java.util.List<java.lang.String> packagingTypes
@Parameter(defaultValue="bnd.bnd") private java.lang.String bndfile
bnd.bnd
. The file path can be an absolute or relative
to the project directory.
The bnd instructions for this project are merged with the bnd instructions, if any, for the parent project.
@Parameter private java.lang.String bnd
<![CDATA[]]>
section. If the
projects has a bnd file
, then this configuration element
is ignored.
The bnd instructions for this project are merged with the bnd instructions, if any, for the parent project.
@Component private org.sonatype.plexus.build.incremental.BuildContext buildContext
private java.io.File propertiesFile
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 static java.lang.StringBuilder addHeaderValue(java.lang.StringBuilder builder, java.lang.String value, char separator)
private static java.lang.StringBuilder addHeaderAttribute(java.lang.StringBuilder builder, java.lang.String key, java.lang.String value, char separator)
private java.io.File loadProperties(Builder builder) throws java.lang.Exception
java.lang.Exception
private void loadParentProjectProperties(Builder builder, org.apache.maven.project.MavenProject currentProject) throws java.lang.Exception
java.lang.Exception
private java.io.File loadProjectProperties(Builder builder, org.apache.maven.project.MavenProject bndProject, org.apache.maven.project.MavenProject pomProject, org.codehaus.plexus.util.xml.Xpp3Dom configuration) throws java.lang.Exception
java.lang.Exception
private java.util.Optional<org.codehaus.plexus.util.xml.Xpp3Dom> getConfiguration(java.util.List<org.apache.maven.model.Plugin> plugins)
private org.codehaus.plexus.util.xml.Xpp3Dom defaultConfiguration()
private void reportErrorsAndWarnings(Builder builder) throws org.apache.maven.plugin.MojoFailureException
org.apache.maven.plugin.MojoFailureException
private void expandJar(Jar jar, java.io.File dir) throws java.lang.Exception
java.lang.Exception
private boolean manifestOutOfDate()