Repository Management with Nexus
18.4. Nexus Plugin Descriptor Maven Plugin

18.4. Nexus Plugin Descriptor Maven Plugin

Nexus plugins have a custom packaging "nexus-plugin" which is introduced by the NexusPD Maven Plugin. A "nexus-plugin" packaged plugin:

  • is a plain JAR

  • has a META-INF/nexus/plugin.xml embedded Nexus Plugin Metadata embedded

  • has static resources embedded into the plugin JAR

The NexusPD Maven plugin introduces a new project path (ie. src/main/static-resources). Static resources such as JS files, images, and CSS which are referenced in

18.4.1. The Nexus Plugin Descriptor

Every Nexus plugin has a plugin descriptor which is generated during the build process for a plugin. This plugin descriptor is packaged with the plugin JAR and can be found in /mnt/ebs/hudson/jobs/nexus-book-en/workspace/nxbook-content/target/classes/META-INF/nexus/plugin.xml.

Example 18.6. A Nexus Plugin Descriptor

<plugin>
  <modelVersion>1.0.0</modelVersion>
  <groupId>org.sonatype.sample</groupId>
  <artifactId>sample-plugin</artifactId>
  <version>1.0-SNAPSHOT</version>
  <name>Nexus Plugin Archetype</name>
  <applicationId>nexus</applicationId>
  <applicationEdition>OSS</applicationEdition>
  <applicationMinVersion>1.4.0</applicationMinVersion>
</plugin>

If your Nexus plugin has any dependencies, they will be included in this plugin descriptor automatically. For example, if the Nexus plugin you were developing had a dependency on commons-beanutils version 1.8.2, your plugin descriptor will incude the following classpathDependency element:

<plugin>
  <modelVersion>1.0.0</modelVersion>
  <groupId>org.sonatype.book.nexus</groupId>
  <artifactId>sample-plugin</artifactId>
  <version>1.0-SNAPSHOT</version>
  <name>Nexus Plugin Archetype</name>
  <applicationId>nexus</applicationId>
  <applicationEdition>OSS</applicationEdition>
  <applicationMinVersion>1.4.0</applicationMinVersion>
  <classpathDependencies>
    <classpathDependency>
      <groupId>commons-beanutils</groupId>
      <artifactId>commons-beanutils</artifactId>
      <version>1.8.2</version>
      <type>jar</type>
    </classpathDependency>
  </classpathDependencies>
</plugin>
Sonatype Promotion Subscribe via RSS