## 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 specified 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

Nested Class Summary

Nested classes/interfaces inherited from class org.eclipse.emf.ant.taskdefs.codegen.ecore.GeneratorTask
`GeneratorTask.ModelLocation, GeneratorTask.ReconcileGenModelType`

Field Summary
`protected java.lang.String` `genModelPath`
`protected JavaImporter` `javaImporter`

Fields inherited from class org.eclipse.emf.ant.taskdefs.codegen.ecore.GeneratorTask
`autoBuild, commandline, copyright, generateEditorProject, generateEditProject, generateJavaCode, generateModelProject, generateTestsProject, 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`

Constructor Summary
`JavaGeneratorTask()`

Method Summary
`protected void` `addGenModelPathArgument()`
`protected void` `checkAttributes()` All the attribute checks should be performed in this method.
`protected void` `createGenModel(java.lang.String[] arguments)`
`protected java.util.List<java.lang.String>` `getGeneratorArguments()`
`void` `setGenModel(java.io.File genModel)`
`void` `setGenModelPath(java.lang.String genModelPath)`
`void` `setModel(java.io.File model)`
`void` `setModelProjectFragmentPath(java.lang.String modelProjectFragmentPath)`

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, setGenerateTestsProject, setJdkLevel, setModelPluginID, setModelProject, setReconcileGenModel, setReconcileGenModel, setSDO, setTemplatePath, setValidateModel, supportMultipleURIs`

Methods inherited from class org.eclipse.emf.ant.taskdefs.EMFTask
`assertTrue, execute, getProgressMonitor`

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`

Field Detail

### genModelPath

    protected java.lang.String genModelPath

### javaImporter

    protected JavaImporter javaImporter

Constructor Detail

### JavaGeneratorTask

    public JavaGeneratorTask()

Method Detail

### 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`

Copyright 2001-2006 IBM Corporation and others. All Rights Reserved.