carbidecpp20devenv/plugins/org.eclipse.emf.source_2.4.1.v200808251517/src/org.eclipse.emf.importer.java_2.4.1.v200808251517/readme.html
author Deepak Modgil <Deepak.Modgil@Nokia.com>
Fri, 03 Apr 2009 17:08:57 +0100
changeset 0 20e4ed35fd3f
permissions -rw-r--r--
DP tools release version Revision: 200912
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     2
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     3
<html xmlns="http://www.w3.org/1999/xhtml">
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     4
<head>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     5
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     6
<title>org.eclipse.emf.importer.java Read Me</title>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     7
</head>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     8
<body lang="EN-US">
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
     9
<h3>Introduction</h3>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    10
<p>This document describes how you can use scripts to generate code from Annotated Java.  The 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    11
script can be either a regular shell script that invokes <a href="#headlessApplication">Eclipse headless 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    12
applications</a> or an Ant script that invokes the <a href="#antTasks">task</a> provided by this plugin.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    13
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    14
<h3><a name="overallComments">Overall Comments</a></h3>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    15
<ul>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    16
<li>If you didn't extract this plugin from CVS, the &quot;examples&quot; directory mentioned 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    17
in this document is available in the EMF source plugin 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    18
(org.eclipse.emf.source_<i>&lt;version&gt;</i>/src/org.eclipse.emf.importer.java_<i>&lt;version&gt;</i>).
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    19
<br/><br/></li>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    20
<li>Before running your build scripts or the examples provided here, make sure you have the 2 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    21
jar files required by this plugin (&quot;importer.java.jar&quot; and 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    22
&quot;importer.java.tasks.jar&quot;) and also the 2 jar files required by the <tt>org.eclipse.emf.ant</tt> 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    23
plugin (&quot;emf.ant.jar&quot; and &quot;emf.ant.tasks.jar&quot;).  If necessary, Eclipse 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    24
can generate them for you.  All you need to do is to run the Ant script created by PDE when you right click on the manifest file 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    25
and select &quot;PDE Tools&gt;Create Ant Build File&quot;.
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    26
<br/><br/></li>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    27
<li>The Annotated Java interfaces must be placed in a directory that corresponds to the source folder of an Eclipse Java Project.  In other words, 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    28
the project's directory must contain all Eclipse's required &quot;metadata&quot; files, such as &quot;.project&quot; and &quot;.classpath&quot;.  
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    29
If the project doesn't already exist in the workspace, the application or task will create it.
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    30
<br/><br/></li>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    31
<li>In order to preserve the original state of this plugin's &quot;examples&quot; directory, you
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    32
should copy it to a different location and run the Ant scripts from there.
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    33
<br/><br/></li>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    34
<li>Starting a new JVM process and invoking Eclipse are expensive operations.  Your build will 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    35
perform better if you are able to group the steps that require Eclipse in a few scripts 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    36
(one script would be ideal).  This is probably a reason to use Ant instead of invoking the 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    37
applications - you can generate code for multiple models using one single Ant script.
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    38
<br/><br/></li>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    39
<li>The &quot;examples/library&quot; directory contains a set of Annotated Java interfaces, and shell and Ant scripts 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    40
to generate its code.
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    41
</li>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    42
</ul>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    43
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    44
<h3><a name="headlessApplication">Java and Generator Applications</a></h3>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    45
<p>The application provided by this plugin generates the ecore and genmodel files from models defined
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    46
using Java interfaces.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    47
<table border="1" cellpadding="2" cellspacing="0" 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    48
summary="Lists the details about the Java application.">
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    49
  <tr><td colspan="2">Java application details</td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    50
	<tr><td>ID</td><td><tt>org.eclipse.emf.importer.ecore.Java2GenModel</tt></td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    51
	<tr><td>Class</td><td><tt>org.eclipse.emf.importer.ecore.JavaImporterApplication</tt></td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    52
</table>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    53
<p>To generate the actual Java code you will need to use a second application, provided by 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    54
the &quot;org.eclipse.emf.codegen.ecore&quot; plugin.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    55
<table border="1" cellpadding="2" cellspacing="0" 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    56
summary="Lists the details about the Generator application.">
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    57
  <tr><td colspan="2">Generator application details</td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    58
	<tr><td>ID</td><td><tt>org.eclipse.emf.codegen.ecore.Generator</tt></td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    59
	<tr><td>Class</td><td><tt>org.eclipse.emf.codegen.ecore.Generator</tt></td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    60
</table>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    61
<p>In order to run these or any other Eclipse application, you need to execute the following 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    62
command (without the line breaks):</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    63
<p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    64
eclipse
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    65
<br/>&nbsp;&nbsp;-noSplash
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    66
<br/>&nbsp;&nbsp;-data <i>&lt;full path to a workspace - ideally an empty directory&gt;</i>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    67
<br/>&nbsp;&nbsp;-application <i>&lt;application ID&gt;</i>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    68
<br/>&nbsp;&nbsp;<i>&lt;application arguments&gt;</i>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    69
</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    70
<p>In Windows you should execute <i>eclipsec</i> instead of <i>eclipse</i> in order to have
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    71
access to the application's console output.</p> 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    72
<p>The directory &quot;examples/library/build&quot; has shell scripts that generate the code for
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    73
the Java interfaces provided.  If you have any questions after reading and experimenting with it, look at the 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    74
applications's javadoc for more details.  Also, check the application's class  
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    75
&quot;getUsage()&quot; method for the list of possible arguments.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    76
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    77
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    78
<h3><a name="antTasks">Java Ant Task</a></h3>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    79
<p>The Java task details are:</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    80
<table border="1" cellpadding="2" cellspacing="0" 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    81
summary="Lists the details about the Java task.">
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    82
	<tr><td>Name</td><td><tt>emf.Java2Java</tt></td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    83
	<tr><td>Class</td><td><tt>org.eclipse.emf.importer.ecore.taskdefs.JavaGeneratorTask</tt></td></tr>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    84
</table>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    85
<p>This is the usual command line to run an Ant script using a headless Eclipse instance (remove the line breaks):</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    86
<p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    87
eclipse
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    88
<br/>&nbsp;&nbsp;-noSplash 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    89
<br/>&nbsp;&nbsp;-data <i>&lt;full path to a workspace - ideally an empty directory&gt;</i>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    90
<br/>&nbsp;&nbsp;-application org.eclipse.ant.core.antRunner
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    91
<br/>&nbsp;&nbsp;-buildfile <i>&lt;full path to your script&gt;</i>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    92
</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    93
<p>In Windows you should execute <i>eclipsec</i> instead of <i>eclipse</i> in order to have
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    94
access to the Ant build script console output.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    95
<p>You can also use the Eclipse UI to execute an Ant script containing an EMF task.  This can be 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    96
done by right-clicking the script and selecting 
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    97
<i>Run As &gt; Ant Build... &gt; JRE &gt; "Run in the same JRE as the workspace&quot;</i>.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    98
<p>The directory &quot;examples/library/build&quot; has an Ant script that generate the code for
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
    99
the model provided.  The task's javadoc has lots of information you may find useful.</p>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
   100
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
   101
</body>
20e4ed35fd3f DP tools release version Revision: 200912
Deepak Modgil <Deepak.Modgil@Nokia.com>
parents:
diff changeset
   102
</html>