native:compile
Full name:
org.codehaus.mojo:native-maven-plugin:1.0.0:compile
Description:
Compile source files into native object files
Attributes:
- Requires a Maven project to be executed.
- The goal is not marked as thread-safe and thus does not support parallel builds.
- Binds by default to the lifecycle phase:
compile.
Required Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<compilerOutputDirectory> |
File |
1.0-alpha-4 |
Compiler output files ( .o, .obj, etc) location Default: ${project.build.directory}/objs |
<compilerProvider> |
String |
1.0-alpha-2 |
Compiler Provider Type Default: generic |
<workingDirectory> |
File |
- |
user directory when external tools( ie compiler/linker ) are invoked Default: ${basedir} |
Optional Parameters
| Name | Type | Since | Description |
|---|---|---|---|
<compilerEndOptions> |
List<String> |
1.0-alpha-2 |
Compiler options |
<compilerExecutable> |
String |
1.0-alpha-2 |
Use this field to override provider specific compiler executable |
<compilerMiddleOptions> |
List<String> |
1.0-alpha-2 |
Compiler options |
<compilerStartOptions> |
List<String> |
1.0-alpha-2 |
Compiler options |
<dependencyIncludeDirectory> |
File |
- |
Directory to unpack .inczip dependency files to be included as system include path Default: ${project.build.directory}/native/include |
<envFactoryName> |
String |
- |
Specifies a fully qualified class name implementing the org.codehaus.mojo.natives.EnvFactory interface. The class creates a set environment variables to be used with the command line. |
<javahOS> |
String |
1.0-alpha-2 |
Javah OS name. ${jdkIncludePath} and ${jdkIncludePath}/${javaOS} are added to system include path when this field is set |
<jdkIncludePath> |
File |
1.0-alpha-2 |
JDK native include directory Default: ${java.home}/../include |
<numberOfConcurrentCompilation> |
int |
1.0-alpha-4 |
Number of parallel compilation threads Default: 1 |
<objectFileExtension> |
String |
1.0-alpha-2 |
Use this field to override object file extension. The default extensions are .obj and .o on Windows and Unix respectively |
<skip> |
boolean |
1.0-M2 |
Set to true to skip the execution of native plugin mojos. Default: falseUser Property: native.skip |
<sources> |
NativeSources[] |
1.0-alpha-2 |
Array of NativeSources containing include directories and source files. |
Parameter Details
<compilerEndOptions>
Compiler options
- Type:
java.util.List<java.lang.String> - Since:
1.0-alpha-2 - Required:
No
<compilerExecutable>
Use this field to override provider specific compiler executable
- Type:
java.lang.String - Since:
1.0-alpha-2 - Required:
No
<compilerMiddleOptions>
Compiler options
- Type:
java.util.List<java.lang.String> - Since:
1.0-alpha-2 - Required:
No
<compilerOutputDirectory>
Compiler output files ( .o, .obj, etc) location
- Type:
java.io.File - Since:
1.0-alpha-4 - Required:
Yes - Default:
${project.build.directory}/objs
<compilerProvider>
Compiler Provider Type
- Type:
java.lang.String - Since:
1.0-alpha-2 - Required:
Yes - Default:
generic
<compilerStartOptions>
Compiler options
- Type:
java.util.List<java.lang.String> - Since:
1.0-alpha-2 - Required:
No
<dependencyIncludeDirectory>
Directory to unpack .inczip dependency files to be included as system include path
- Type:
java.io.File - Required:
No - Default:
${project.build.directory}/native/include
<envFactoryName>
Specifies a fully qualified class name implementing the org.codehaus.mojo.natives.EnvFactory interface. The class creates a set environment variables to be used with the command line.
- Type:
java.lang.String - Required:
No
<javahOS>
Javah OS name. ${jdkIncludePath} and ${jdkIncludePath}/${javaOS} are added to system include path when this field is set
- Type:
java.lang.String - Since:
1.0-alpha-2 - Required:
No
<jdkIncludePath>
JDK native include directory
- Type:
java.io.File - Since:
1.0-alpha-2 - Required:
No - Default:
${java.home}/../include
<numberOfConcurrentCompilation>
Number of parallel compilation threads
- Type:
int - Since:
1.0-alpha-4 - Required:
No - Default:
1
<objectFileExtension>
Use this field to override object file extension. The default extensions are .obj and .o on Windows and Unix respectively
- Type:
java.lang.String - Since:
1.0-alpha-2 - Required:
No
<skip>
Set to true to skip the execution of native plugin mojos.
- Type:
boolean - Since:
1.0-M2 - Required:
No - User Property:
native.skip - Default:
false
<sources>
Array of NativeSources containing include directories and source files.
- Type:
org.codehaus.mojo.natives.NativeSources[] - Since:
1.0-alpha-2 - Required:
No
<workingDirectory>
user directory when external tools( ie compiler/linker ) are invoked
- Type:
java.io.File - Required:
Yes - Default:
${basedir}

