Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "ETrice/Development/GettingStartedWithEtrice"

(Prepare Eclipse and build eTrice)
Line 1: Line 1:
 
= Prepare Eclipse and build eTrice =
 
= Prepare Eclipse and build eTrice =
 
# get the sources ([[ETrice/Development/Repository |see how]])  
 
# get the sources ([[ETrice/Development/Repository |see how]])  
# download the latest release of Eclipse Modeling Tools (e.g. http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/indigo/SR2/eclipse-modeling-indigo-SR2-win32.zip)
+
# download the latest release of Eclipse Modeling Tools (cf. http://www.eclipse.org/downloads/packages/eclipse-modeling-tools/junosr1)
 
# start eclipse
 
# start eclipse
 
# Install additional Plugins (if not already installed)
 
# Install additional Plugins (if not already installed)

Revision as of 05:08, 29 October 2012

Prepare Eclipse and build eTrice

  1. get the sources (see how)
  2. download the latest release of Eclipse Modeling Tools (cf. http://www.eclipse.org/downloads/packages/eclipse-modeling-tools/junosr1)
  3. start eclipse
  4. Install additional Plugins (if not already installed)
    1. Help -> Install New Software -> Juno - http://download.eclipse.org/releases/juno
    2. select Collaboration -> Eclipse EGit
    3. select
      1. Graphiti 0.9.1
      2. XText SDK 2.3.1
    4. select Programming Languages -> Xtend SDK 2.3.1
  5. import all projects from your local GIT clone to your Workspace (with EGit plugin)
    1. Perspective -> Git Repository
    2. Add Repository (local GIT clone)
    3. Context Menu of Working Directory -> Import Projects
    4. Import all Projects
  6. make sure you are using a JDK (in Eclipse: Window->Preferences->Java->Installed JREs->e.g. jdk1.6.0_24), attention: do not use jdk1.6.0_18 or jdk1.6.0_22!
  7. currently not used : build eTrice with our target platform (see how)

Getting Started with eTrice

Setting up Runtime Workspace

  • start the runtime workspace: org.eclipse.etrice.core.room.ui -> eTrice-rt.launch (contextmenu -> Run As)
  • check out the runtime projects from your local GIT clone
    • org.eclipse.etrice.tutorials
    • org.eclipse.etrice.modellib
    • org.eclipse.etrice.runtime.java

Editing the Model

  • the first model you find in org.eclipse.etrice.doc.tutorials/model/scratch/PingPong.room (doubleclick for editor)
  • if the room editor has the focus, you can see all your model elements in the outline view
  • with a right click on an actor (e.g. MrPingActor) you can
    • Edit Structure
    • Edit Behavior
  • Important: You have to save every "dirty" editor before opening another editor

Code Generator

  • org.eclipse.etrice.doc.tutorials -> genAllTutorials.mwe2.launch -> (contextmenu)Run As -> genAllModels.mwe2
  • you will find the generated code in org.eclipse.etrice.doc.tutorials/src-gen
  • you can see the generated instance tree of your actor org.eclipse.etrice.doc.tutorials/src-gen/PingPong/SubSystem_PingPong.jpg
    • Precondition: install the current version of graphviz and add the path to dot.exe to you system or user PATH variable

Run

  • start generated application: org.eclipse.etrice.doc.tutorials/src-gen/PingPong/SubSystem_PingPongRunner.java -> Run As -> Java Application
  • in the View Console you can see the debugging output of the running model
  • enter "quit" and <enter> in the Console to stop the running application (you should see *** T H E E N D *** )

Debug

  • in org.eclipse.etrice.doc.tutorials/tmp/log you will find the generated Message Sequence Chart of your application: SubSystem_PingPong_Async.seq (MSC)
  • you can debug the generated code like any other Java Project. The main function is located in SubSystem_PingPongRunner.java
  • be aware that all actors communication via message queue, so the regular sourcecode debugging is sometimes not sufficient

Back to the top