Difference between revisions of "MoDisco/JavaGeneration"

From Eclipsepedia

Jump to: navigation, search
(New page: The goal of Java Discoverer plugin is to allow practical extractions of Java models from a Java project. == Description == This plugin aims at analysing Java source cod...)
 
Line 1: Line 1:
The goal of Java Discoverer plugin is to allow practical extractions of [[MoDisco/Java|Java models]] from a Java project.
+
The goal of Java Generation plugin is to allow Java code generation from a [[MoDisco/Java|Java model]].
 
+
  
 
== Description ==
 
== Description ==
  
This plugin aims at analysing Java source code compliant with version 3 of "Java Language Specification" from Sun Microsystems and providing a model describing the information found, conform to the [[MoDisco/Java|Java metamodel]].
+
This plugin proposes ([[Acceleo|Acceleo]]) MTL modules for generating Java files conforming to Java models.
 +
Templates are contained in two modules :
 +
* Structures modules : top level templates for generating classes/method/field declarations
 +
* Statements modules
  
A [[MoDisco/Java|Java model]] will contain the full abstract syntax tree of the Java program : each statement such as attribute definition, method invocation or loop is described. In addition, links between elements are resolved (by resolved link we mean for instance a link between a method invocation and the declaration of this method, or the usage of a variable and its declaration). The model can thus be seen as an abstract syntax graph (ASG).
+
Java models are obtained with [[MoDisco/JavaDiscoverer2|Java Discoverer]] component.
  
 
== Requirements ==
 
== Requirements ==
Line 12: Line 14:
 
To use the plug-in you need:
 
To use the plug-in you need:
 
* JDK 1.5 or above
 
* JDK 1.5 or above
* a version of Eclipse 3.3 or above with the following set of plugins installed
+
* a version of Eclipse 3.5 or above with the following set of plugins installed
:* [[EMF|EMF]] 2.3.0 or higher
+
:* [[EMF|EMF]] 2.5.0 or higher
:* [[ATL|ATL]] 2.0.0 or higher
+
:* [[Acceleo|Acceleo]] 0.8.0 or higher
 
:* [[MoDisco/Java|Java metamodel]]
 
:* [[MoDisco/Java|Java metamodel]]
  
 
== Team ==
 
== Team ==
Gabriel Barbier ([http://www.mia-software.com Mia-Software])
 
 
 
Fabien Giquel ([http://www.mia-software.com Mia-Software])
 
Fabien Giquel ([http://www.mia-software.com Mia-Software])
 
Frédéric Madiot ([http://www.mia-software.com Mia-Software])
 
  
 
== Source Repository ==
 
== Source Repository ==
Line 28: Line 26:
 
All of the source code is stored in a public source repository, which you can access at:
 
All of the source code is stored in a public source repository, which you can access at:
  
[https://dev.eclipse.org/svnroot/modeling/org.eclipse.gmt.modisco/plugins/trunk/org.eclipse.gmt.modisco.java.discoverer/ https://dev.eclipse.org/svnroot/modeling/org.eclipse.gmt.modisco/plugins/trunk/org.eclipse.gmt.modisco.java.discoverer/]
+
[https://dev.eclipse.org/svnroot/modeling/org.eclipse.gmt.modisco/plugins/trunk/org.eclipse.gmt.modisco.java.generation/ https://dev.eclipse.org/svnroot/modeling/org.eclipse.gmt.modisco/plugins/trunk/org.eclipse.gmt.modisco.java.generation/]
  
 
== User manual ==
 
== User manual ==
 
The plugin provides the user with a contextual menu to easily create models.
 
 
By right-clicking on a Java Project in the Eclipse Package Explorer view, you can quickly create the Java model of your application (see next Figure).
 
 
 
[[Image:MoDisco-JavaDiscoverer popup.png|frame|center|Menus in Eclipse to create model from source code]]
 
 
A progress bar will appear at the bottom of the window as soon as the operation begins. Depending on the size of your application, the reverse engineering might take some time to complete (see next Figure).
 
 
[[Image:MoDisco-JavaDiscoverer progress bar model creation.png|frame|center|Progress bar during model creation]]
 
 
At the end of the process, the newly created model files are added at the root of your project and are automatically opened in the default editor (see next Figure).
 
 
[[Image:MoDisco-JavaDiscoverer Java model.png|frame|center|Java model in the package explorer]]
 
 
.javaxmi files could be opened in the Sample Ecore Model Editor (see next Figure).
 
 
[[Image:MoDisco-JavaDiscoverer Java in EMF browser.png|frame|center|Java model viewed with EMF browser]]
 
 
They could also be opened in MoDisco model browser (see next Figure) which brings some graphical improvements.
 
 
[[Image:MoDisco-JavaDiscoverer example Java SimpleModel.jpg|frame|center|Java model viewed with MoDisco browser]]
 

Revision as of 13:02, 11 January 2010

The goal of Java Generation plugin is to allow Java code generation from a Java model.

Contents

Description

This plugin proposes (Acceleo) MTL modules for generating Java files conforming to Java models. Templates are contained in two modules :

  • Structures modules : top level templates for generating classes/method/field declarations
  • Statements modules

Java models are obtained with Java Discoverer component.

Requirements

To use the plug-in you need:

  • JDK 1.5 or above
  • a version of Eclipse 3.5 or above with the following set of plugins installed

Team

Fabien Giquel (Mia-Software)

Source Repository

All of the source code is stored in a public source repository, which you can access at:

https://dev.eclipse.org/svnroot/modeling/org.eclipse.gmt.modisco/plugins/trunk/org.eclipse.gmt.modisco.java.generation/

User manual