Class PackageJarMojo

java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.fusesource.hawtjni.maven.PackageJarMojo
All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled, org.apache.maven.plugin.Mojo

@Mojo(name="package-jar", defaultPhase=PREPARE_PACKAGE) public class PackageJarMojo extends org.apache.maven.plugin.AbstractMojo
This goal allows allows you to package the JNI library created by build goal in a JAR which the HawtJNI runtime can unpack when the library needs to be loaded. This platform specific jar is attached with a classifier which matches the current platform.
  • Field Details

    • project

      @Parameter(defaultValue="${project}", readonly=true) protected org.apache.maven.project.MavenProject project
      The maven project.
    • name

      @Parameter(defaultValue="${project.artifactId}") private String name
      The base name of the library, used to determine generated file names.
    • archiverManager

      @Component private org.codehaus.plexus.archiver.manager.ArchiverManager archiverManager
    • projectHelper

      @Component private org.apache.maven.project.MavenProjectHelper projectHelper
    • libDirectory

      @Parameter(defaultValue="${project.build.directory}/generated-sources/hawtjni/lib") private File libDirectory
      The output directory where the built JNI library will placed. This directory will be added to as a test resource path so that unit tests can verify the built JNI library. The library will placed under the META-INF/native/${platform} directory that the HawtJNI Library uses to find JNI libraries as classpath resources.
    • platform

      @Parameter private String platform
      The platform identifier of this build. If not specified, it will be automatically detected.
    • classified

      @Parameter(defaultValue="true") private boolean classified
      Should a classifier of the native jar be set to match the platform?
    • osgiPlatforms

      @Parameter private List<String> osgiPlatforms
      The osgi platforms that the library match for. Example value: osname=MacOS;processor=x86-64
  • Constructor Details

    • PackageJarMojo

      public PackageJarMojo()
  • Method Details

    • execute

      public void execute() throws org.apache.maven.plugin.MojoExecutionException
      Throws:
      org.apache.maven.plugin.MojoExecutionException
    • getNativeCodeValue

      public String getNativeCodeValue(org.fusesource.hawtjni.runtime.Library library)
    • getOsgiOSName

      public String getOsgiOSName()
    • getOsgiProcessor

      public String getOsgiProcessor()