Difference between revisions of "Corona/GettingStarted/Dev"

From Eclipsepedia

Jump to: navigation, search
(Step 1.1: Download IDE)
(Step 6: Check-out Corona Sources)
 
(8 intermediate revisions by one user not shown)
Line 13: Line 13:
 
==== Step 1.1: Download IDE ====
 
==== Step 1.1: Download IDE ====
 
If you do not already have an Eclipse for RCP/Plug-in Developers installed, download and install the following:
 
If you do not already have an Eclipse for RCP/Plug-in Developers installed, download and install the following:
* [http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/R/eclipse-rcp-galileo-win32.zip|Eclipse for RCP/Plug-in Developers]
+
* [http://www.eclipse.org/downloads/download.php?file=/technology/epp/downloads/release/galileo/R/eclipse-rcp-galileo-win32.zip Eclipse for RCP/Plug-in Developers]
  
 
==== Step 1.2: Install Subversive ====
 
==== Step 1.2: Install Subversive ====
The Eclipse Subversive plug-ins for SVN are not installed in the RCP/IDE distribution. However, they are provided via the Ganymede update site. These plug-ins must be installed so that you can interact with Corona's SVN repository.
+
The Eclipse Subversive plug-ins for SVN are not installed in the RCP/Plug-in distribution. However, they are provided via the Galileo update site. These plug-ins must be installed so that you can interact with Corona's SVN repository.  
  
* Select '''Help -> Software Updates...'''
+
* Select '''Help''' -> '''Install New Software... '''
* Select the '''Available Software''' tab
+
* Select the '''Available Software''' tab  
* Expand the '''Ganymede''' entry
+
* In '''Work with''' field, select Galileo - http://download.eclipse.org/releases/galileo
* Expand the '''Collaboration Tools''' entry
+
* Expand the '''Collaboration''' entry  
* Select the 3 SVN components to install
+
* Select the 2 SVN components to install  
** Subversion Integration for Mylyn
+
** Subversion SVN Integration for the Mylyn Project
** SVN Team Provider
+
** SVN Team Provider  
** SVN Team Provider Localization
+
* Click Next
* Select the '''Install''' button
+
* Click Next
 +
* Accept the License (Click Finish)
 +
* After the installation has been completed, Restart Eclipse
  
 
==== Step 1.3: Install Subversive Connectors ====
 
==== Step 1.3: Install Subversive Connectors ====
Please follow the instructions for installing the Eclipse Subversive plug-ins that are available on the Eclipse Subversive's download page.
+
In order for Subversive plug-in to work, Subversive SVN Connector is necessary.  They are provided by Polarion update site.
* [http://www.eclipse.org/subversive/downloads.php Eclipse Subversive Download]
+
 
 +
* Select '''Help''' -> '''Install New Software... '''
 +
* Select the '''Available Software''' tab
 +
* Click '''Add''' next to the '''Work with''' field
 +
* In '''Name''' and '''Location''' fields, enter http://community.polarion.com/projects/subversive/download/eclipse/2.0/galileo-site/
 +
* Select
 +
** Native JavaHL 1.6 Implementation
 +
** Subversive SVN Connectors
 +
** SVNKit 1.3.0 Implementation
 +
* Click Next
 +
* Click Finish
 +
* After the installation has been completed, Restart Eclipse
  
 
=== Step 2: Setup Subversion ===
 
=== Step 2: Setup Subversion ===
Corona's source repository is managed by Subversion. You will need to install the Eclipse Subversive plug-ins and define a repository location for Corona.
+
==== Step 2.1: Setup the appropriate SVN Connector ====
  
* Switch to the '''SVN Repository''' perspective
+
* Select '''Window''' -> '''Preferences'''
* Select '''File -> New -> Repository Location'''
+
* Expand '''Team'''
* Complete the '''New Repository Location''' dialog
+
* Select '''SVN'''
 +
* Select '''SVN Connector''' tab
 +
* In the '''SVN Connector''' field, select Native JavaHL
 +
* Click Ok
  
;Committer Repository URL:svn+ssh://dev.eclipse.org/svnroot/technology/org.eclipse.corona
+
==== Step 2.2: Repository setup ====
;Contributor Repository URL:http://dev.eclipse.org/svnroot/technology/org.eclipse.corona
+
* Open the '''SVN Repository Exploring''' perspective
 +
* Select '''File''' -> '''New''' -> '''Repository Location'''
 +
* Complete the '''New Repository Location''' dialog
 +
* Committer Repository URL:svn+ssh://dev.eclipse.org/svnroot/technology/org.eclipse.corona
 +
* Contributor Repository URL:http://dev.eclipse.org/svnroot/technology/org.eclipse.corona
  
 
=== Step 3: Check-out Team Artifacts ===
 
=== Step 3: Check-out Team Artifacts ===
Corona provides team artifacts to help team member participate in the community. Some of these artifacts are used to setup the ''workspace'' used for Corona development
+
Corona provides team artifacts to help team member participate in the community. Some of these artifacts are used to setup the workspace used for Corona development
* Switch to the ''SVN Repository'' perspective
+
* Switch to the '''SVN Repository''' perspective  
* Expand the entry for Corona's SVN repository
+
* Expand the entry for Corona's SVN repository  
* Expand the entry for '''trunk'''
+
* Expand the entry for '''trunk'''  
* Check-out ''corona.team'' folder
+
* Check-out '''team.corona''' folder
  
 
=== Step 4: Download Target Platform Runtime ===
 
=== Step 4: Download Target Platform Runtime ===
Corona uses the ''target platform'' capability of the IDE. This allows the IDE to simulate the platform where the plug-ins under development will eventually be deployed.
+
Corona uses the ''target platform'' capability of the IDE. This allows the IDE to simulate the platform where the plug-ins under development will eventually be deployed.  
  
 
The ''target platform'' is default set of Equinox, Eclipse Core, and 3rd party libraries used in a server-side environment.  This environment is setup using an Ant script within the team's artifacts.
 
The ''target platform'' is default set of Equinox, Eclipse Core, and 3rd party libraries used in a server-side environment.  This environment is setup using an Ant script within the team's artifacts.
Line 56: Line 76:
 
The following steps are performed within the ''Plug-in Development'' perspective.
 
The following steps are performed within the ''Plug-in Development'' perspective.
  
==== Step 4.1: Update Runtime Properties ====
+
==== Step 4.1: Proxy setup ====
 
It is common for Corona developers to work behind a firewall.  For Corona to be able to properly setup its ''target platform'', it needs to be able to download plug-ins from external repositories.
 
It is common for Corona developers to work behind a firewall.  For Corona to be able to properly setup its ''target platform'', it needs to be able to download plug-ins from external repositories.
  
* Edit the Ant script '''corona.team/target.platforms/runtime/build.xml'''
+
* Edit the Ant script '''team.corona/runtime/buildTargetRuntime.xml'''
* Find the Ant target ''init''
+
* Find the Ant target '''init '''
* Update (or comment out) the arguments for '''<setproxy .../>'''
+
* If needed, update (and comment out) the arguments for '''<setproxy .../>'''  
  
==== Step 4.2: Update Download URL ====
+
==== Step 4.2: Initialize ''target.platform'' Runtime ====
Eclipse resources are available from many download mirrors.  You will need to figure out which one is best to use to update your ''target platform'' environment. 
+
* ''Run'' the Ant script '''team.corona/runtime/buildTargetRuntime.xml'''
* Edit the Ant script '''corona.team/target.platforms/runtime/build.properties'''
+
* Update the value for ''eclipse.download.mirror''
+
 
+
==== Step 4.3: Initialize ''target.platform'' Runtime ====
+
* ''Run'' the Ant script '''corona.team/runtime/build.xml'''
+
 
* ''Refresh'' your workspace so it is aware of the files added to the ''target platform''
 
* ''Refresh'' your workspace so it is aware of the files added to the ''target platform''
  
 
=== Step 5: Define Workspace Target Platform ===
 
=== Step 5: Define Workspace Target Platform ===
 
Each Plug-in Development Workspace can be configured for a specific ''target platform''.
 
Each Plug-in Development Workspace can be configured for a specific ''target platform''.
* Select the '''Windows -> Preferences''' menu item
+
 
* Expand the '''Plug-in Development''' entry
+
* Open the '''team.corona/runtime/CoronaDevelopmentRuntime.target''' file
* Select '''Target Platform'''
+
* In '''Location''', remove the two items:
* Select the '''Browse''' button
+
** ${eclipse_home}
* Navigate the ''corona.team'' tree and select '''corona.team/target.platforms/eclipse-runtime.target'''
+
** http://download.eclipse.org/eclipse/updates/3.5
* Select the '''Load Target''' button
+
* Click '''Add'''
* Select the '''Ok''' button
+
* Select '''Directory''' and click Next
 +
* In '''Location''' browse to '''team.corona\runtime\generated\corona\eclipse'''
 +
* Click Finish
 +
* Click on '''Set as Target Platform''' link on the Top Right corner.
 +
* Save the file and close it.
  
 
=== Step 6: Check-out Corona Sources ===
 
=== Step 6: Check-out Corona Sources ===
* Switch to the ''Plug-in Development'' perspective
+
* Within the ''Package Explorer'' view, expand the '''team.corona''' entry  
* Within the ''Package Explorer'' view, expand the '''corona.team''' entry
+
* Expand the '''project.sets''' folder  
* ''Expand'' the '''project.sets''' folder
+
* Open '''corona-all.psf'''
* Right-mouse-click '''corona-all.psf'''
+
* If you are a Committer, leave it as is (using svn+ssh)
* Select '''import'''
+
* If you are a Contributor, replace every svn+ssh by http
* Select '''Team -> Team Project Set'''
+
* Right-mouse-click on the file (Package Explorer)
* Select '''Finish'''
+
* Select '''Import Project Set'''
 +
* Clean (Build) the project
  
 
;Note:Corona's team project set also defines ''working sets'' to help organize Corona's plug-ins within your development workspace.
 
;Note:Corona's team project set also defines ''working sets'' to help organize Corona's plug-ins within your development workspace.
  
 
[[Category: Corona]]
 
[[Category: Corona]]

Latest revision as of 15:31, 23 July 2009

Contents

[edit] Setting Up Corona Development Environment

Corona's development environment is based upon the Eclipse PDE/IDE. All of Corona's server-side components are either OSGi Bundles or Eclipse Plug-ins.

Note
  • It is assumed the you are familiar with Eclipse IDE, Subversion, etc...
  • The following steps should be performed in a new workspace


[edit] Step 1: Setup Eclipse PDE/IDE

[edit] Step 1.1: Download IDE

If you do not already have an Eclipse for RCP/Plug-in Developers installed, download and install the following:

[edit] Step 1.2: Install Subversive

The Eclipse Subversive plug-ins for SVN are not installed in the RCP/Plug-in distribution. However, they are provided via the Galileo update site. These plug-ins must be installed so that you can interact with Corona's SVN repository.

  • Select Help -> Install New Software...
  • Select the Available Software tab
  • In Work with field, select Galileo - http://download.eclipse.org/releases/galileo
  • Expand the Collaboration entry
  • Select the 2 SVN components to install
    • Subversion SVN Integration for the Mylyn Project
    • SVN Team Provider
  • Click Next
  • Click Next
  • Accept the License (Click Finish)
  • After the installation has been completed, Restart Eclipse

[edit] Step 1.3: Install Subversive Connectors

In order for Subversive plug-in to work, Subversive SVN Connector is necessary. They are provided by Polarion update site.

[edit] Step 2: Setup Subversion

[edit] Step 2.1: Setup the appropriate SVN Connector

  • Select Window -> Preferences
  • Expand Team
  • Select SVN
  • Select SVN Connector tab
  • In the SVN Connector field, select Native JavaHL
  • Click Ok

[edit] Step 2.2: Repository setup

  • Open the SVN Repository Exploring perspective
  • Select File -> New -> Repository Location
  • Complete the New Repository Location dialog
  • Committer Repository URL:svn+ssh://dev.eclipse.org/svnroot/technology/org.eclipse.corona
  • Contributor Repository URL:http://dev.eclipse.org/svnroot/technology/org.eclipse.corona

[edit] Step 3: Check-out Team Artifacts

Corona provides team artifacts to help team member participate in the community. Some of these artifacts are used to setup the workspace used for Corona development

  • Switch to the SVN Repository perspective
  • Expand the entry for Corona's SVN repository
  • Expand the entry for trunk
  • Check-out team.corona folder

[edit] Step 4: Download Target Platform Runtime

Corona uses the target platform capability of the IDE. This allows the IDE to simulate the platform where the plug-ins under development will eventually be deployed.

The target platform is default set of Equinox, Eclipse Core, and 3rd party libraries used in a server-side environment. This environment is setup using an Ant script within the team's artifacts.

The following steps are performed within the Plug-in Development perspective.

[edit] Step 4.1: Proxy setup

It is common for Corona developers to work behind a firewall. For Corona to be able to properly setup its target platform, it needs to be able to download plug-ins from external repositories.

  • Edit the Ant script team.corona/runtime/buildTargetRuntime.xml
  • Find the Ant target init
  • If needed, update (and comment out) the arguments for <setproxy .../>

[edit] Step 4.2: Initialize target.platform Runtime

  • Run the Ant script team.corona/runtime/buildTargetRuntime.xml
  • Refresh your workspace so it is aware of the files added to the target platform

[edit] Step 5: Define Workspace Target Platform

Each Plug-in Development Workspace can be configured for a specific target platform.

  • Open the team.corona/runtime/CoronaDevelopmentRuntime.target file
  • In Location, remove the two items:
  • Click Add
  • Select Directory and click Next
  • In Location browse to team.corona\runtime\generated\corona\eclipse
  • Click Finish
  • Click on Set as Target Platform link on the Top Right corner.
  • Save the file and close it.

[edit] Step 6: Check-out Corona Sources

  • Within the Package Explorer view, expand the team.corona entry
  • Expand the project.sets folder
  • Open corona-all.psf
  • If you are a Committer, leave it as is (using svn+ssh)
  • If you are a Contributor, replace every svn+ssh by http
  • Right-mouse-click on the file (Package Explorer)
  • Select Import Project Set
  • Clean (Build) the project
Note
Corona's team project set also defines working sets to help organize Corona's plug-ins within your development workspace.