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"

Line 15: Line 15:
 
* [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]
 
* [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]
 
* [http://download.eclipse.org/webtools/downloads/ Web Tools Platform v1.5]
 
* [http://download.eclipse.org/webtools/downloads/ Web Tools Platform v1.5]
* [http://www.eclipse.org/downloads/download.php?file=/technology/ecf/org.eclipse.ecf.sdk-0.9.1.S20060906.zip ECF v0.9.1]
+
* [http://www.eclipse.org/downloads/download.php?file=/technology/ecf/org.eclipse.ecf.sdk-0.9.5.S20061222.zip ECF v0.9.5]
 
* [http://www.eclipse.org/downloads/download.php?file=/tools/emf/downloads/drops/2.2.0/R200606271057/emf-sdo-xsd-SDK-2.2.0.zip EMF-SDO-XSD v2.2]
 
* [http://www.eclipse.org/downloads/download.php?file=/tools/emf/downloads/drops/2.2.0/R200606271057/emf-sdo-xsd-SDK-2.2.0.zip EMF-SDO-XSD v2.2]
 
* [http://download.eclipse.org/eclipse/equinox org.eclipse.equinox.event]
 
* [http://download.eclipse.org/eclipse/equinox org.eclipse.equinox.event]
 
* [http://download.eclipse.org/eclipse/equinox org.eclipse.equinox.http]
 
* [http://download.eclipse.org/eclipse/equinox org.eclipse.equinox.http]
 
* [http://download.eclipse.org/eclipse/equinox org.eclipse.equinox.log]
 
* [http://download.eclipse.org/eclipse/equinox org.eclipse.equinox.log]
 
+
* [http://people.apache.org/~jhawkins/Corona_M7/plugins.zip axis2] related plugins
 +
*:* Simply copy plugins located in the zip file, into your eclipse/plugins directory.
 
=== 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 55: Line 56:
 
Workbench build process of some of those "stub" projects was enhanced, and it should automatically download required libraries. You can find more of that process in [[Automatic Stub Project Build|automatic build of stub projects]] section<br>
 
Workbench build process of some of those "stub" projects was enhanced, and it should automatically download required libraries. You can find more of that process in [[Automatic Stub Project Build|automatic build of stub projects]] section<br>
  
If the build process  fails, you can download and install all required libraries manually.
 
Below you can find a list of stub projects and where you can find required libraries:
 
* muse-osgi-soa-core
 
*: Project requires following libraries:
 
*:* muse-osgi-soa-core-2.0.0.jar (found in [http://www.apache.org/dist/ws/muse/2.0.0/bin/muse-2.0.0-bin.zip muse-2.0.0-bin.zip])
 
*: Required library can be downloaded from [http://www.apache.org/dist/ws/muse/2.0.0/bin/muse-2.0.0-bin.zip Apache Muse] project.
 
* org.apache.axis2
 
*: Project requires following libraries:
 
*:* activation-1.1.jar
 
*:* annogen-0.1.0.jar
 
*:* axiom-api-SNAPSHOT.jar
 
*:* axiom-impl-SNAPSHOT.jar
 
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-adb-SNAPSHOT.jar axis2-adb-SNAPSHOT.jar]
 
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-java2wsdl-SNAPSHOT.jar axis2-java2wsdl-SNAPSHOT.jar]
 
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-kernel-SNAPSHOT.jar axis2-kernel-SNAPSHOT.jar]
 
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-saaj-SNAPSHOT.jar axis2-saaj-SNAPSHOT.jar]
 
*:* commons-codec-1.3.jar
 
*:* commons-httpclient-3.0.1.jar
 
*:* mail-1.4.jar
 
*:* neethi-SNAPSHOT.jar
 
*:* stax-api-1.0.1.jar
 
*:* stax-utils-20060915.jar
 
*:* wstx-asl-2.9.3.jar
 
*:* XmlSchema-SNAPSHOT.jar
 
*: Above libraries can be downloaded from the [http://people.apache.org/dist/axis2/nightly/axis2.war Apache Axis2] (found in WEB-INF/lib).<br>
 
* org.apache.axis2.codegen
 
*: Project requires following libraries:
 
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-codegen-SNAPSHOT.jar axis2-codegen-SNAPSHOT.jar]
 
*: Library can be downloaded from [http://people.apache.org/repository/org.apache.axis2/jars/ Apache Axis2] site.<br>
 
* org.apache.axis2.security.tokenserver
 
*: Project requires following libraries:
 
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-rahas-SNAPSHOT.jar axis2-rahas-SNAPSHOT.jar]
 
*: Library can be downloaded from [http://people.apache.org/repository/org.apache.axis2/jars Apache Axis2] site
 
 
* org.apache.log4j_1.2.13
 
* org.apache.log4j_1.2.13
 
*: Project requires following libraries:
 
*: Project requires following libraries:
 
*:* log4j-1.2.13.jar (found in [http://archive.apache.org/dist/logging/log4j/1.2.13/logging-log4j-1.2.13.zip logging-log4j-1.2.13.zip])
 
*:* log4j-1.2.13.jar (found in [http://archive.apache.org/dist/logging/log4j/1.2.13/logging-log4j-1.2.13.zip logging-log4j-1.2.13.zip])
 
*: Library required for project can be downloaded from [http://archive.apache.org/dist/logging/log4j/1.2.13/logging-log4j-1.2.13.zip log4j] site.  
 
*: Library required for project can be downloaded from [http://archive.apache.org/dist/logging/log4j/1.2.13/logging-log4j-1.2.13.zip log4j] site.  
* org.apache.ws.security
+
 
*: Project requires following libraries:
+
=== Workbench workaround problem/setup ===
*:* [http://people.apache.org/repository/org.apache.axis2/jars/axis2-security-SNAPSHOT.jar axis2-security-SNAPSHOT.jar]
+
''Temporarily added. Will be removed when problem will be solved.''<br>
*:* [http://people.apache.org/repository/wss4j/jars/wss4j-SNAPSHOT.jar wss4j-SNAPSHOT.jar]
+
To get corona compilable in your workspace you'll have to preform additionally following steps:
*:* xmlsec-1.3.0.jar (found in [http://xml.apache.org/security/dist/java-library/xml-security-bin-1_3_0.zip xml-security-bin-1_3_0.zip])
+
* Download [http://people.apache.org/~jhawkins/Corona_M7/org.eclipse.corona.pde.workaround.zip workaround] project.
*: Library required for project can be downloaded from [http://people.apache.org/repository/org.apache.axis2/jars Apache Axis2], [http://people.apache.org/repository/wss4j/jars wss4j] and [http://xml.apache.org/security/dist/java-library xmlsec].
+
* 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.
  
 
=== ECF Server Configuration ===
 
=== ECF Server Configuration ===

Revision as of 13:02, 3 January 2007

Eclipse Home Wiki Home Development

Development Environment 1.0.0M5

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

IDE Setup

The Eclipse Workbench IDE should include the following:

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
+---maps
+---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.

Eclipse config.ini file

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

Stub Projects

Corona contains several "Stub" projects.
Those projects contain libraries which are still waiting for eclipse IP approval, hence cannot be found in our CVS repository.
Workbench build process of some of those "stub" projects was enhanced, and it should automatically download required libraries. You can find more of that process in automatic build of stub projects section

  • org.apache.log4j_1.2.13
    Project requires following libraries:
    Library required for project can be downloaded from log4j site.

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.

ECF Server Configuration

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

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.

Back to the top