org.eclipse.emf.importer.java.taskdefs
Class JavaGeneratorTask
java.lang.Object
org.apache.tools.ant.ProjectComponent
org.apache.tools.ant.Task
org.eclipse.emf.ant.taskdefs.EMFTask
org.eclipse.emf.ant.taskdefs.codegen.ecore.GeneratorTask
org.eclipse.emf.importer.java.taskdefs.JavaGeneratorTask
- All Implemented Interfaces:
- java.lang.Cloneable
public class JavaGeneratorTask
- extends GeneratorTask
Generates source code from models specifed using Annotated Java. Exposes some
functionalities available on the JavaImporterApplication
class - check its printUsage() method for detailed information on the arguments
you can use with this task.
This task is supposed to be executed by a Eclipse driver with the
org.eclipse.emf.ant plugin. It is neither necessary to use Ant's task
TaskDef to declare this task in a script nor to change the Ant's runtime
classpath.
The following command line will start a headless Eclipse instance and run the specified
Ant script.
eclipseDir/eclipse
-noSplash
-data worspaceDir
-application org.eclipse.ant.core.antRunner
-buildfile antScript
In Windows you should execute eclipsec instead of eclipse in order to have
access to the Ant build script console output.
You can also use the Eclipse UI to execute an Ant script containing this task by right-clicking the script and selecting
Run As > Ant Build... > JRE > "Run in the same JRE as the workspace".
Usage example:
<emf.Java2Java genModel="/lib/emf/lib.genmodel">
<emf.Java2Java genModelPath="/lib/model/lib.genmodel"
modelProject="c:/lib"
<arg line="-packages http://www.example.eclipse.org/Library"/>
</emf.Ecore2Java>
Different than the other EMF Generator tasks, this one requires the model
specification files, Annotated Java, to be located in a workspace Java project. The
genModelPath attribute should be used to indicated the workspace absolute path
of the GenModel. Also, if the genModel's project doesn't exist in the workspace (indicated by
workspaceDir in the command line above), the modelProject attribute should
be used to indicate the model's location. This directory should contain all the Eclipse's necessary
files (such as ".project" and ".classpath") to define this project as a valid Java project.
Also, the following attributes cannot be used within this task:
- model
- genModel
- modelProjectFragmentPath
- Since:
- 2.3.0
Fields inherited from class org.eclipse.emf.ant.taskdefs.codegen.ecore.GeneratorTask |
autoBuild, commandline, copyright, generateEditorProject, generateEditProject, generateJavaCode, generateModelProject, genModel, GENMODEL_KEEP, GENMODEL_OVERWRITE, GENMODEL_RELOAD, jdkLevel, model, modelPluginID, modelProject, modelProjectFragmentPath, reconcileGenModel, sdo, templatePath, validateModel |
Fields inherited from class org.apache.tools.ant.Task |
target, taskName, taskType, wrapper |
Fields inherited from class org.apache.tools.ant.ProjectComponent |
description, location, project |
Methods inherited from class org.eclipse.emf.ant.taskdefs.codegen.ecore.GeneratorTask |
addGenModelArguments, addModelPathArgument, adjustEditAndEditorProjects, createArg, createModel, doExecute, generateCodeFromGenModel, getCommandline, getJDKLevel, setAutoBuild, setCopyright, setGenerateEditorProject, setGenerateEditProject, setGenerateJavaCode, setGenerateModelProject, setJdkLevel, setModelPluginID, setModelProject, setReconcileGenModel, setReconcileGenModel, setSDO, setTemplatePath, setValidateModel, supportMultipleURIs |
Methods inherited from class org.apache.tools.ant.Task |
bindToOwner, getOwningTarget, getRuntimeConfigurableWrapper, getTaskName, getTaskType, getWrapper, handleErrorFlush, handleErrorOutput, handleFlush, handleInput, handleOutput, init, isInvalid, log, log, log, log, maybeConfigure, perform, reconfigure, setOwningTarget, setRuntimeConfigurableWrapper, setTaskName, setTaskType |
Methods inherited from class org.apache.tools.ant.ProjectComponent |
clone, getDescription, getLocation, getProject, setDescription, setLocation, setProject |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
genModelPath
protected java.lang.String genModelPath
javaImporter
protected JavaImporter javaImporter
JavaGeneratorTask
public JavaGeneratorTask()
setModel
public void setModel(java.io.File model)
- Overrides:
setModel
in class GeneratorTask
setGenModel
public void setGenModel(java.io.File genModel)
- Overrides:
setGenModel
in class GeneratorTask
setModelProjectFragmentPath
public void setModelProjectFragmentPath(java.lang.String modelProjectFragmentPath)
- Overrides:
setModelProjectFragmentPath
in class GeneratorTask
setGenModelPath
public void setGenModelPath(java.lang.String genModelPath)
createGenModel
protected void createGenModel(java.lang.String[] arguments)
throws java.lang.Exception
- Specified by:
createGenModel
in class GeneratorTask
- Throws:
java.lang.Exception
checkAttributes
protected void checkAttributes()
throws org.apache.tools.ant.BuildException
- Description copied from class:
EMFTask
- All the attribute checks should be performed in this method.
- Overrides:
checkAttributes
in class GeneratorTask
- Throws:
org.apache.tools.ant.BuildException
addGenModelPathArgument
protected void addGenModelPathArgument()
- Overrides:
addGenModelPathArgument
in class GeneratorTask
getGeneratorArguments
protected java.util.List<java.lang.String> getGeneratorArguments()
- Overrides:
getGeneratorArguments
in class GeneratorTask