@Mojo(name="compile",
defaultPhase=PROCESS_CLASSES,
requiresDependencyResolution=COMPILE_PLUS_RUNTIME,
requiresDependencyCollection=COMPILE_PLUS_RUNTIME)
public class BytecoderMavenMojo
extends org.apache.maven.plugin.AbstractMojo
| Modifier and Type | Field and Description |
|---|---|
protected String[] |
additionalClassesToLink
List of full qualified class names to be linked beside the statically referenced ones.
|
protected String[] |
additionalResources
A list of classpath resources to be included into the build.
|
protected String |
backend
Backend to be used.
|
protected String |
buildDirectory
The build target directory.
|
protected File |
classFiles |
protected boolean |
debugOutput
Shall debug output be generated?
|
protected boolean |
enableExceptionHandling
Shall Exception-Handling be activated?
|
protected String |
filenamePrefix
Prefix of the generated files.
|
protected String |
mainClass
Classname with the main class to be compiled.
|
protected boolean |
minifyCompileResult
Shall the compile result be minified?
|
protected String |
optimizationLevel
Which kind of optimization should be applied? Can be NONE, ALL or EXPERIMENTAL.
|
protected boolean |
preferStackifier
Shall the Stackifier be used and the Relooper as fallback?
|
protected org.apache.maven.project.MavenProject |
project |
protected String |
registerAllocator
Which register allocator should be used? Can be linear or passthru.
|
protected int |
wasmInitialPages
Minimum number of pages for WASM memory.
|
protected int |
wasmMaximumPages
Maximum number of pages for WASM memory.
|
| Constructor and Description |
|---|
BytecoderMavenMojo() |
| Modifier and Type | Method and Description |
|---|---|
void |
execute() |
protected boolean |
isSupportedScope(String scope) |
protected ClassLoader |
prepareClassLoader() |
@Parameter(defaultValue="${project}",
readonly=true)
protected org.apache.maven.project.MavenProject project
@Parameter(defaultValue="${project.build.outputDirectory}")
protected File classFiles
@Parameter(required=true) protected String mainClass
@Parameter(required=true,
defaultValue="js")
protected String backend
@Parameter(defaultValue="${project.build.directory}")
protected String buildDirectory
@Parameter(required=false,
defaultValue="false")
protected boolean debugOutput
@Parameter(required=false,
defaultValue="false")
protected boolean enableExceptionHandling
@Parameter(required=false,
defaultValue="ALL")
protected String optimizationLevel
@Parameter(required=false,
defaultValue="bytecoder")
protected String filenamePrefix
@Parameter(required=false,
defaultValue="512")
protected int wasmInitialPages
@Parameter(required=false,
defaultValue="1024")
protected int wasmMaximumPages
@Parameter(required=false,
defaultValue="true")
protected boolean minifyCompileResult
@Parameter(required=false,
defaultValue="false")
protected boolean preferStackifier
@Parameter(required=false,
defaultValue="linear")
protected String registerAllocator
@Parameter(required=false) protected String[] additionalClassesToLink
@Parameter(required=false) protected String[] additionalResources
public void execute()
throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionprotected boolean isSupportedScope(String scope)
protected final ClassLoader prepareClassLoader() throws org.apache.maven.plugin.MojoExecutionException
org.apache.maven.plugin.MojoExecutionExceptionCopyright © 2019 Systemprogrammierung Mirko Sertic. All rights reserved.