Package org.codehaus.mojo.natives.plugin
Class NativeCompileMojo
java.lang.Object
org.apache.maven.plugin.AbstractMojo
org.codehaus.mojo.natives.plugin.AbstractNativeMojo
org.codehaus.mojo.natives.plugin.NativeCompileMojo
- All Implemented Interfaces:
org.apache.maven.plugin.ContextEnabled,org.apache.maven.plugin.Mojo
@Mojo(name="compile",
defaultPhase=COMPILE)
public class NativeCompileMojo
extends AbstractNativeMojo
Compile source files into native object files
-
Field Summary
FieldsModifier and TypeFieldDescriptionCompiler optionsprivate StringUse this field to override provider specific compiler executableCompiler optionsprotected FileCompiler output files ( .o, .obj, etc) locationprivate StringCompiler Provider TypeCompiler optionsprivate CompilerConfigurationFor unittest onlyprivate StringJavah OS name.private FileJDK native include directoryprivate CompilerManagerprotected intNumber of parallel compilation threadsprivate StringUse this field to override object file extension.protected NativeSources[]Array of NativeSources containing include directories and source files.Fields inherited from class org.codehaus.mojo.natives.plugin.AbstractNativeMojo
dependencyIncludeDirectory, EMPTY_FILE_LIST, envFactoryManager, INCZIP_FOUND, INCZIP_TYPE, LINKER_INPUT_LIST_NAME, LINKER_OUTPUT_PATH, project, workingDirectoryFields inherited from interface org.apache.maven.plugin.Mojo
ROLE -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidPickup additional source paths that previous phases added to source root Note: we intentionally ignore the first item of source root ( ie ${project.build.directory}/classes since this plugin never use it.private voidprotected CompilerConfigurationvoidexecute()protected CompilerConfigurationInternal only for test harness purposeMethods inherited from class org.codehaus.mojo.natives.plugin.AbstractNativeMojo
getAllCompilersOutputFileList, getEnvFactory, getProject, removeEmptyOptions, saveCompilerOutputFilePathsMethods inherited from class org.apache.maven.plugin.AbstractMojo
getLog, getPluginContext, setLog, setPluginContext
-
Field Details
-
compilerProvider
Compiler Provider Type- Since:
- 1.0-alpha-2
-
objectFileExtension
Use this field to override object file extension. The default extensions are .obj and .o on Windows and Unix respectively- Since:
- 1.0-alpha-2
-
compilerExecutable
Use this field to override provider specific compiler executable- Since:
- 1.0-alpha-2
-
compilerStartOptions
Compiler options- Since:
- 1.0-alpha-2
-
compilerMiddleOptions
Compiler options- Since:
- 1.0-alpha-2
-
compilerEndOptions
Compiler options- Since:
- 1.0-alpha-2
-
javahOS
Javah OS name. ${jdkIncludePath} and ${jdkIncludePath}/${javaOS} are added to system include path when this field is set- Since:
- 1.0-alpha-2
-
jdkIncludePath
JDK native include directory- Since:
- 1.0-alpha-2
-
sources
Array of NativeSources containing include directories and source files.- Since:
- 1.0-alpha-2
-
compilerOutputDirectory
@Parameter(defaultValue="${project.build.directory}/objs", required=true) protected File compilerOutputDirectoryCompiler output files ( .o, .obj, etc) location- Since:
- 1.0-alpha-4
-
numberOfConcurrentCompilation
@Parameter(defaultValue="1") protected int numberOfConcurrentCompilationNumber of parallel compilation threads- Since:
- 1.0-alpha-4
-
manager
-
config
For unittest only
-
-
Constructor Details
-
NativeCompileMojo
public NativeCompileMojo()
-
-
Method Details
-
execute
public void execute() throws org.apache.maven.plugin.MojoExecutionException- Throws:
org.apache.maven.plugin.MojoExecutionException
-
addJavaHIncludePaths
private void addJavaHIncludePaths() -
addAdditionalIncludePath
private void addAdditionalIncludePath()Pickup additional source paths that previous phases added to source root Note: we intentionally ignore the first item of source root ( ie ${project.build.directory}/classes since this plugin never use it. -
createProviderConfiguration
protected CompilerConfiguration createProviderConfiguration() throws org.apache.maven.plugin.MojoExecutionException- Throws:
org.apache.maven.plugin.MojoExecutionException
-
getCompilerConfiguration
Internal only for test harness purpose- Returns:
-