Native ARchive plugin for Maven

This plugin compiles native code and publishes native artifacts in the form of nar files.

License

License

Categories

Categories

Maven Build Tools
GroupId

GroupId

com.github.maven-nar
ArtifactId

ArtifactId

nar-maven-plugin
Last Version

Last Version

3.10.1
Release Date

Release Date

Type

Type

maven-plugin
Description

Description

Native ARchive plugin for Maven
This plugin compiles native code and publishes native artifacts in the form of nar files.
Project URL

Project URL

https://maven-nar.github.io/
Project Organization

Project Organization

NAR Maven Plugin developers
Source Code Management

Source Code Management

https://github.com/maven-nar/nar-maven-plugin

Download nar-maven-plugin

How to add to project

<plugin>
    <groupId>com.github.maven-nar</groupId>
    <artifactId>nar-maven-plugin</artifactId>
    <version>3.10.1</version>
</plugin>

Dependencies

compile (25)

Group / Artifact Type Version
commons-io : commons-io jar 2.4
org.apache.ant : ant jar 1.8.1
org.apache.bcel : bcel jar 6.0
org.apache.maven : maven-artifact jar 3.0.4
org.apache.maven : maven-compat jar 3.0.4
org.apache.maven : maven-core jar 3.0.4
org.apache.maven : maven-model jar 3.0.4
org.apache.maven : maven-plugin-api jar 3.0.4
org.apache.maven.shared : maven-common-artifact-filters jar 1.4
org.apache.maven.shared : maven-dependency-tree jar 2.2
org.apache.maven.surefire : surefire-api jar 2.6
org.apache.maven.surefire : surefire-booter jar 2.6
org.codehaus.plexus : plexus-compiler-api jar 2.3
org.codehaus.plexus : plexus-container-default jar 1.0-alpha-9-stable-1
org.codehaus.plexus : plexus-utils jar 3.0.17
org.codehaus.plexus : plexus-archiver jar 2.4.4
org.sonatype.plexus : plexus-build-api jar 0.0.7
org.sonatype.sisu : sisu-guava jar 0.9.9
org.sonatype.sisu : sisu-inject-plexus jar 2.3.0
xerces : xercesImpl jar 2.9.1
xml-apis : xml-apis jar 1.3.04
org.eclipse.aether : aether-api jar 0.9.0.M2
org.eclipse.aether : aether-util jar 0.9.0.M2
net.java.dev.jna : jna jar 4.4.0
net.java.dev.jna : jna-platform jar 4.4.0

provided (1)

Group / Artifact Type Version
org.apache.maven.plugin-tools : maven-plugin-annotations jar 3.2

test (1)

Group / Artifact Type Version
junit : junit jar 4.11

Project Modules

There are no modules declared in this project.

The NAR plugin for Maven allows you to compile native code (C++, C and Fortran) on a number of different architectures (Linux, Windows, MacOSX, Solaris, FreeBSD, ...) and with a number of different compilers/linkers (g++, Microsoft Visual C++, CC, ...) The output produced is wrapped up in Native ARchive files (.nar) some of which are machine independent (-noarch), while others are machine specific and thus depend on a combination of machine architecture(A), operating-system(O) and linker(L) identified as AOL. These nar files can be installed in the local Maven repository and deployed to a standard Maven (web) server, using the standard maven-install-plugin and maven-deploy-plugin.

Usage

In your POM:

<build>
	<plugins>
		<plugin>
			<groupId>com.github.maven-nar</groupId>
			<artifactId>nar-maven-plugin</artifactId>
			<version>3.5.1</version>
			<extensions>true</extensions>
			<configuration>
				...
			</configuration>
		</plugin>
	</plugins>
</build>

Of course, it is recommended that you use the latest version.

What you put in the <configuration> section will depend on your build; for ideas, see:

Documentation

Community

What about maven-nar-plugin?

This is the official maven-nar-plugin project, renamed to nar-maven-plugin as per Apache Maven's requirements.

Alternatives and Complements

com.github.maven-nar

NAR plugin for Maven

Compile and reuse native code cross-platform with Maven

Versions

Version
3.10.1
3.9.7
3.9.1
3.6.0
3.5.2
3.5.1
3.5.0
3.4.0
3.3.0
3.2.3
3.2.2
3.2.0
3.1.0
3.0.0
3.0.0-rc-2
3.0.0-rc1