summaryrefslogtreecommitdiff
path: root/src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java')
-rw-r--r--src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java b/src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java
index 24443c3..758eb74 100644
--- a/src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java
+++ b/src/main/java/org/apache/maven/plugin/nar/NarSystemMojo.java
@@ -53,7 +53,8 @@ public class NarSystemMojo
for ( Iterator i = getLibraries().iterator(); !jniFound && i.hasNext(); )
{
Library library = (Library) i.next();
- if ( library.getType().equals( Library.JNI ) )
+ if ( library.getType().equals( Library.JNI )
+ || library.getType().equals( Library.SHARED ))
{
packageName = library.getNarSystemPackage();
narSystemName = library.getNarSystemName();
@@ -64,6 +65,12 @@ public class NarSystemMojo
if ( !jniFound || packageName == null)
{
+ if ( !jniFound ) {
+ getLog().debug("NAR: not building a shared or JNI library, so not generating NarSystem class.");
+ } else {
+ getLog().warn(
+ "NAR: no system package specified; unable to generate NarSystem class.");
+ }
return;
}
@@ -108,6 +115,12 @@ public class NarSystemMojo
p.println( " System.loadLibrary(\"" + artifactId + "-"
+ version + "\");" );
p.println( " }" );
+ p.println("");
+ p.println(" public static int runUnitTests() {");
+ p.println(" return new NarSystem().runUnitTestsNative();");
+ p.println("}");
+ p.println("");
+ p.println(" public native int runUnitTestsNative();");
p.println( "}" );
p.close();
fos.close();