Jump to: navigation, search

Corona Development Environment

Revision as of 12:00, 9 March 2007 by Marcin.okraszewski.compuware.com (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Eclipse Home Wiki Home Development

Development Environment 1.0.0M8

  • Corona is based upon Eclipse v3.3 (or later).
  • Bundles and plugins should be compiled for JDK 1.5

IDE Setup

The Eclipse Workbench IDE should include the following:

  • Eclipse SDK v3.3
  • Eclipse Modelling Framework SDO-XSD SDK v2.3 or later
  • Eclipse Communication Framework v1.0 or later
  • Eclipse Equinox SDK v3.3

CVS Structure

The name of Corona's CVS's repository is org.eclipse.corona. This location contains all of Corona's artifacts. The structure for Corona's CVS repository is:

org.eclipse.corona
+---build
+---doc
+---examples
+---features
+---incubator
+---libs
+---maps
+---other
+---plugins
|   +---org.eclipse.corona
|   +---org.eclipse.corona.collaboration
|   +---org.eclipse.corona.collaboration.project
|   +---...
+---tests

IDE Projects

The root of Corona's CVS repository is not an Eclipse Workbench IDE project. IDE project's can be checked-out from CVS. Each folder under the CVS plugins folder corresponds to an IDE project.

IDE launch configurations

Corona plugins contain predefined launch configurations for both client and server. The configurations are launched from Eclipse IDE and used to test / debug Corona. Each configuration defines:

  • required plugins depending on configuration's scope
  • program arguments
  • JVM arguments

Use "Validate Plug-in Set" button in Manage configurations dialog to verify if all plugins were imported correctly and specified in the configuration.

3rd Party Libraries Projects

Corona depends on several projects that contain 3rd party libraries.
Some of them contain libraries that are still waiting for Eclipse IP approval. They were committed to CVS as Corona was classified as Incubating project. All such projects are under lib folder in Corona CVS. 3rd party libraries that were IP approved should be consument via Orbit CVS repository. It is expected that the lib folder will become deprecated as soon as all jars will become IP approved.

Workbench workaround problem/setup

Temporarily added. Will be removed when problem will be solved.
To get corona compilable in your workspace you'll have to preform additionally following steps:

  • Download workaround project.
  • Import org.eclipse.corona.pde.workaround project from downloaded zip file into your workspace.
  • Modify org.eclipse.corona.axis2.handler.sdo plugin as follows:
    • Goto right click on project->properties->Java Build Path.
    • Open Projects tab.
    • Remove org.apache.axis2.databinding.
    • Remove org.apache.axiom.impl_1.2.0.
    • Add org.eclipse.corona.pde.workaround project.
  • Refresh all projects and clean the workspace.

Projects Javadoc Configuration

Default javadoc configuration ( Window -> Preferences... -> Java -> Compiler -> Javadoc ) for all Corona projects should look as follows:

Javadoc setting.JPG

Corona code formatting

Corona project slightly changed default eclipse code formatting options. If you'd like to use eclipse auto formating feature, please use corona formatting style. The formatting style and how to apply it is described in following corona-dev email.
NOTE: Please copy (as text) emails attachment and save it as 'Eclipse Default Format with 132 Line Width.xml' file than proceed with emails instructions.

Corona default code templates

Corona default code templates can be taken from following corona-dev email.
NOTE: Please copy (as text) emails attachment and save it as 'CoronaFormatter.xml' file than proceed with emails instructions.

Eclipse config.ini file (Deprecated)

For proper corona startup you'll have to modify your eclipse config.ini file. The file is located in following directory <eclipse>/configuration/config.ini. You need to modify the osgi.bundles section, which indicates which bundles and when should be started.
Currently we're using following configuration:

osgi.bundles=org.eclipse.equinox.common@2:start, org.eclipse.osgi.services@2:start, \
org.eclipse.equinox.log@3:start, org.eclipse.corona.logger.log4j@4:start, \
org.eclipse.update.configurator@3:start, org.eclipse.core.runtime@start, \
org.eclipse.equinox.event@start, org.eclipse.equinox.http@start

ECF Server Configuration (Deprecated)

For proper debugging you'll have to modify org.eclipse.ecf.server_0.9.1 plug-in located in the directory <eclipse>/eclipse/plugins/org.eclipse.ecf.server_0.9.1. In directory org.eclipse.ecf.server_0.9.1/conf you can find server.xml file. Please change it's content as follows:

<server>
  <connector protocol="ecftcp"  hostname="localhost" port="3282" timeout="30000">
    <group name="server"/>
    <group name="corona"/>
  </connector>
</server>

For ECF 0.9.2 you need to unzip the org.eclipse.ecf.server_0.9.2.jar to a folder org.eclipse.ecf.server_0.9.2 edit the server.xml file as described above. Remove org.eclipse.ecf.server_0.9.2.jar after creating the folder org.eclipse.ecf.server_0.9.2