Native ARchive plugin for Maven
Java C HTML C++ Shell Objective-C
Latest commit c5e4d02 Jan 17, 2017 @ctrueden ctrueden committed on GitHub Merge pull request #249 from yuxuanchiadm/master
Fix NPE problem in isMSVC

README.md

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