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 "Corona Development Environment"

m
 
(27 intermediate revisions by 5 users not shown)
Line 7: Line 7:
 
</table>
 
</table>
 
----
 
----
== Development Environment ==
+
== Development Environment 1.0.0M8 ==
* Corona is based upon Eclipse v3.2 (or later).
+
* Corona is based upon Eclipse v3.3 (or later).
* All bundles and plugins should be compiled for JDK 1.5
+
* Bundles and plugins should be compiled for JDK 1.5
  
 
=== IDE Setup ===
 
=== IDE Setup ===
 
The Eclipse Workbench IDE should include the following:
 
The Eclipse Workbench IDE should include the following:
* [http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops/R-3.2-200606291905/eclipse-SDK-3.2-win32.zip Eclipse SDK v3.2]
+
* Eclipse SDK v3.3
* [http://download.eclipse.org/webtools/downloads/ Web Tools Platform v1.5]
+
* Eclipse Modelling Framework SDO-XSD SDK v2.3 or later
* [http://www.eclipse.org/downloads/download.php?file=/technology/ecf/org.eclipse.ecf.sdk-0.9.1.S20060906.zip ECF v0.9.1]
+
* Eclipse Communication Framework v1.0 or later
* [http://www.eclipse.org/downloads/download.php?file=/tools/emf/downloads/drops/2.2.0/R200606271057/emf-sdo-xsd-SDK-2.2.0.zip EMC v2.2]
+
* Eclipse Equinox SDK v3.3
 
+
 
=== CVS Structure ===
 
=== 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:
 
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:
Line 27: Line 26:
 
+---examples
 
+---examples
 
+---features
 
+---features
 +
+---incubator
 +
+---libs
 
+---maps
 
+---maps
 +
+---other
 
+---plugins
 
+---plugins
 
|  +---org.eclipse.corona
 
|  +---org.eclipse.corona
Line 39: Line 41:
 
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.
 
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.
  
==== Projects Javadoc Configuration ====
+
=== IDE launch configurations ===
Default javadoc configuration for all Corona projects should look as follows:
+
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.<br>
 +
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.''<br>
 +
To get corona compilable in your workspace you'll have to preform additionally following steps:
 +
* Download [http://people.apache.org/~jhawkins/Corona_M7/org.eclipse.corona.pde.workaround.zip 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:
  
 
[[Image:Javadoc_setting.JPG]]
 
[[Image: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 [http://dev.eclipse.org/mhonarc/lists/corona-dev/msg00517.html corona-dev email].<br>
 +
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 [http://dev.eclipse.org/mhonarc/lists/corona-dev/msg00519.html corona-dev email].<br>
 +
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.
 +
<br>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>
 +
&nbsp;&nbsp;<connector protocol="ecftcp"  hostname="localhost" port="3282" timeout="30000">
 +
&nbsp;&nbsp;&nbsp;&nbsp;<group name="server"/>
 +
&nbsp;&nbsp;&nbsp;&nbsp;<group name="corona"/>
 +
&nbsp;&nbsp;</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
 +
 +
 +
[[Category:Corona]]

Latest revision as of 12:00, 9 March 2007

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

Back to the top