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.
Difference between revisions of "OTDevelopmentSetup"
(New page: For hacking on the OTDT the following steps should get you going. Note that headless build and steps for a release are described at OTBuilding. * ...) |
|||
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
For hacking on the [[Object_Teams_Development_Tooling|OTDT]] the following steps should get you going. Note that headless build and steps for a release are described at [[OTBuilding]]. | For hacking on the [[Object_Teams_Development_Tooling|OTDT]] the following steps should get you going. Note that headless build and steps for a release are described at [[OTBuilding]]. | ||
− | * Install a recent Eclipse | + | * Install a recent Eclipse Package (recommended IDE for Committers). |
+ | : To work on the current master of Object Teams, you may need the latest development build. | ||
+ | : When using a an older IDE, consider switching to the corresponding maintenance branch from the OT git repo. | ||
* Install a matching version of the OTDT into the above | * Install a matching version of the OTDT into the above | ||
*: Consider also installing the corresponding source feature, for lookup of source code for plugins which you don't have in your workspace | *: Consider also installing the corresponding source feature, for lookup of source code for plugins which you don't have in your workspace | ||
* Install EGit | * Install EGit | ||
− | * Clone this repo: http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git | + | * '''Simple checkout''' |
− | * Check out projects from git: | + | ** <U>OTDT</U>: download http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git/plain/releng/map/otdt.psf, and import via Import > Team > Team Project Set |
− | ** Minimally: | + | ** <U>Tests</U>: download http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git/plain/releng/map/otdt-all-tests.psf, and import via Import > Team > Team Project Set (''long running operation'') |
− | *** org.eclipse.jdt.core | + | * '''Manual checkout''' ''(alternative if you need more control than "simple checkout")'' |
− | ** For the full OTDT add: | + | ** Clone this repo: http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git |
− | *** all projects under plugins/ | + | ** Check out projects from git: |
− | ** For tests add | + | *** Minimally: |
− | *** org.eclipse.jdt.core.tests.compiler | + | **** org.eclipse.jdt.core |
− | *** org.eclipse.jdt.core.tests.model | + | *** For the full OTDT add: |
− | *** all projects under testplugins | + | **** all projects under plugins/ |
− | **: note that tests have dependencies on further test projects from JDT and related, which are hosted in their respective repositories. | + | *** For tests add |
− | **: '''TODO''' collect minimal set of references, maybe some full zip of dependent test projects | + | **** org.eclipse.jdt.core.tests.compiler |
− | ** For interactive deployment add | + | **** org.eclipse.jdt.core.tests.model |
− | *** all projects under features/ | + | **** all projects under testplugins |
+ | ***: note that tests have dependencies on further test projects from JDT and related, which are hosted in their respective repositories. | ||
+ | ***: '''TODO''' collect minimal set of references, maybe some full zip of dependent test projects | ||
+ | *** For interactive deployment add | ||
+ | **** all projects under features/ | ||
;compile:Since installing the OTDT already provides all dependencies, compiling in the IDE should work out of the box. | ;compile:Since installing the OTDT already provides all dependencies, compiling in the IDE should work out of the box. | ||
+ | * create jars for the runtime environment using these jar descriptions (will appear in org.eclipse.objectteams.otdt/lib): | ||
+ | ** org.eclipse.objectteams.runtime/otre_min.jardesc | ||
+ | ** org.eclipse.objectteams.otre/otre_agent.jardesc | ||
+ | ** org.eclipse.objectteams.otredyn/otre_agent.jardesc | ||
+ | : <font color=red>Remember to repeat this step when any relevant class has been edited</font> | ||
− | ;deploy / export:Use the wizard '''Export > Plug-in Development > Deployable features''' and select these features: | + | ;deploy / export plug-ins and features:Use the wizard '''Export > Plug-in Development > Deployable features''' and select these features: |
* org.eclipse.objectteams.otdt -- ''the umbrella feature for the IDE'' | * org.eclipse.objectteams.otdt -- ''the umbrella feature for the IDE'' | ||
* org.eclipse.objectteams.otdt.core.patch -- ''patch feature containing the OT/J version of JDT/Core'' | * org.eclipse.objectteams.otdt.core.patch -- ''patch feature containing the OT/J version of JDT/Core'' | ||
* org.eclipse.objectteams.otequinox -- ''OT/J runtime and integration for Equinox'' | * org.eclipse.objectteams.otequinox -- ''OT/J runtime and integration for Equinox'' | ||
+ | |||
+ | ;building the command line compiler:You may simply use the org.eclipse.jdt.core_3.X.Y.v_OTDT_abc.jar produced by the above export. | ||
+ | * Alternatively, for building the minimal ecotj.jar run org.eclipse.jdt.core/scripts/export-ecj.xml as Ant Build. | ||
+ | : For details regarding export-ecj.xml see also the thread at https://www.eclipse.org/forums/index.php/t/1085180/ | ||
;test:There are lots of individual JUnit suites, and aggregate suites, typically called s.t. like TestAll. | ;test:There are lots of individual JUnit suites, and aggregate suites, typically called s.t. like TestAll. | ||
Line 32: | Line 47: | ||
* For those tests not including any UI test launch can be optimized on the '''Main''' tab of the launch configuration by selecting '''Program to Run > Run an application > <nowiki>[No Application]</nowiki> - Headless Mode''' | * For those tests not including any UI test launch can be optimized on the '''Main''' tab of the launch configuration by selecting '''Program to Run > Run an application > <nowiki>[No Application]</nowiki> - Headless Mode''' | ||
+ | ;projects and dependencies:The full list of plug-ins and features including dependencies can be found in /releng/map/otdt.map | ||
[[Category:Object Teams Development]] | [[Category:Object Teams Development]] |
Latest revision as of 05:07, 2 August 2017
For hacking on the OTDT the following steps should get you going. Note that headless build and steps for a release are described at OTBuilding.
- Install a recent Eclipse Package (recommended IDE for Committers).
- To work on the current master of Object Teams, you may need the latest development build.
- When using a an older IDE, consider switching to the corresponding maintenance branch from the OT git repo.
- Install a matching version of the OTDT into the above
- Consider also installing the corresponding source feature, for lookup of source code for plugins which you don't have in your workspace
- Install EGit
- Simple checkout
- OTDT: download http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git/plain/releng/map/otdt.psf, and import via Import > Team > Team Project Set
- Tests: download http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git/plain/releng/map/otdt-all-tests.psf, and import via Import > Team > Team Project Set (long running operation)
- Manual checkout (alternative if you need more control than "simple checkout")
- Clone this repo: http://git.eclipse.org/c/objectteams/org.eclipse.objectteams.git
- Check out projects from git:
- Minimally:
- org.eclipse.jdt.core
- For the full OTDT add:
- all projects under plugins/
- For tests add
- org.eclipse.jdt.core.tests.compiler
- org.eclipse.jdt.core.tests.model
- all projects under testplugins
- note that tests have dependencies on further test projects from JDT and related, which are hosted in their respective repositories.
- TODO collect minimal set of references, maybe some full zip of dependent test projects
- For interactive deployment add
- all projects under features/
- Minimally:
- compile
- Since installing the OTDT already provides all dependencies, compiling in the IDE should work out of the box.
- create jars for the runtime environment using these jar descriptions (will appear in org.eclipse.objectteams.otdt/lib):
- org.eclipse.objectteams.runtime/otre_min.jardesc
- org.eclipse.objectteams.otre/otre_agent.jardesc
- org.eclipse.objectteams.otredyn/otre_agent.jardesc
- Remember to repeat this step when any relevant class has been edited
- deploy / export plug-ins and features
- Use the wizard Export > Plug-in Development > Deployable features and select these features:
- org.eclipse.objectteams.otdt -- the umbrella feature for the IDE
- org.eclipse.objectteams.otdt.core.patch -- patch feature containing the OT/J version of JDT/Core
- org.eclipse.objectteams.otequinox -- OT/J runtime and integration for Equinox
- building the command line compiler
- You may simply use the org.eclipse.jdt.core_3.X.Y.v_OTDT_abc.jar produced by the above export.
- Alternatively, for building the minimal ecotj.jar run org.eclipse.jdt.core/scripts/export-ecj.xml as Ant Build.
- For details regarding export-ecj.xml see also the thread at https://www.eclipse.org/forums/index.php/t/1085180/
- test
- There are lots of individual JUnit suites, and aggregate suites, typically called s.t. like TestAll.
- The central suite for OT/J is org.eclipse.objectteams.otdt.tests.otjld.AllTests
- Each test suite can be invoked using Run As ... > JUnit Plug-in Test
- For those tests not including any UI test launch can be optimized on the Main tab of the launch configuration by selecting Program to Run > Run an application > [No Application] - Headless Mode
- projects and dependencies
- The full list of plug-ins and features including dependencies can be found in /releng/map/otdt.map