Skip to content

Developing PCM2Java4KeY

Max Kramer edited this page Jul 19, 2017 · 5 revisions

Development

If you want to change or extend the implementation of PCM2JavaKey, you have to compile code that replaces the Eclipse plug-ins that you install from the update site. Therefore, the first step is always to obtain an Eclipse in which you can use PCM2Java4Key, as described in the README.md.

The development set up involves three steps in which you prepare an Eclipse IDE, import the plug-in code, and run a new Eclipse that has the plug-ins installed.

Prepare Development Eclipse

Set up an Eclipse to use PCM2Java4Key and create a new empty workspace for the development of PCM2Java4KeY.

Clone Repository and Import Projects

  • Clone the PCM2Java4KeY repository and import only the projects of the plug-ins that you want to modify or extend into your workspace
    • both can be done at once in Eclipse
      • right-click in the Package Explorer - Import - Git - Projects from Git - Clone URI
      • as you do not need to import the feature projects you can either set the scope of the wizard to the folder "bundles" in the "Working Tree" or you deselect these projects from the list (but importing the feature projects too will not do any harm)
  • If you want to change or extend code on which PCM2Java4KeY depends you have to clone only those repositories and import only those projects of the plug-ins that you want to modify. The following dependencies may help:

Run new Eclipse with Confidentiality Specification and Code Generation Support

  • Run Palladio with the possibility to specifcy confidentiality to generate Java code with JML proof obligations for KeY
    • run a new "Eclipse Application" that is started from the Eclipse in which you checked out all plug-in projects as specified above
    • this can be done e.g. by creating a new debug configuration for an "Eclipse Application" with default settings).
      • Run - Debug Configurations - Eclipse Configuration - right click - New
  • Create or modify a new or existing Palladio model in the workspace of the new Eclipse
    • e.g. import an existing project ("Import - Existing Projects into Workspace")
    • e.g. clone and import an example from the Examples Repository
    • e.g. right-click - New - Other - Palladio Modeling - New Palladio Project
Clone this wiki locally