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

Virgo/Tooling

< Virgo
Revision as of 04:47, 31 August 2011 by Rklaren.educator.eu (Talk | contribs) (Migration)

Tooling

Installation

Prerequisites, either:

  • Eclipse JEE Helios SR2, or
  • Eclipse JEE Indigo

Installation Steps (for the latest milestone builds):

  • Add Spring IDE update site to available update sites: http://dist.springframework.org/snapshot/IDE/nightly (At the moment the Virgo IDE has a dependency on the Spring IDE. We are working on removing this dependency. Until we get there, you need Spring IDE installed or available at one of the update sites.)
  • Go to "Install New Software" and put the Virgo IDE nightly snapshot update site into the dialog: http://download.eclipse.org/virgo/milestone/IDE.
  • Select the "Core / Virgo IDE" feature and install
  • Done

Installation Steps (for the latest snapshot builds):

Features

The tooling supports the following:

  • Bundle projects
  • Par projects
  • Plan files/projects
  • Web Bundles
  • Deployment to a Virgo Server in the server view.

Notes

Web Application Bundles

To create a web application bundle choose to create a normal bundle project, but on the Bundle Content panel select the additional property entitled "Web Application Bundle". On the Bundle Properties panel enter a suitable context path for the application as the Web-ContextPath.

Bundlor

Bundlor is not used by default, you must create you own template file and then turn on incremental manifest generation.

PDE/Equinox Bundles not supported yet

Deploying PDE/Equinox Bundles to Virgo Web Server are not yet supported yet, although exporting the bundles (as Eclipse Plug-in JARs) and manually deploying to Virgo Web Server works. Please show your support on Bugzilla #329198.

Migration

Moving from the old tooling to the new requires some changes to your existing projects, these are documented here.

The Bundlor .settings file has a new name (com.springsource.server.ide.bundlor.core.prefs -> org.eclipse.virgo.ide.bundlor.core.prefs) and the property keys in it have new names as well. Currently these just need to be changed manually (replace com.springsource.server by org.eclipse.virgo) or use the project properties pane to create new settings and delete the old one.

The Bundle Dependencies classpath entry has a new name (com.springsource.server.ide.jdt.core.MANIFEST_CLASSPATH_CONTAINER -> org.eclipse.virgo.ide.jdt.core.MANIFEST_CLASSPATH_CONTAINER). This can be changed manually (in the .classpath file) or in the Java Build Path section of the project properties.

The attributes used to mark folders as test folders have been renamed (com.springsource.server.ide.jdt.core.test.classpathentry -> org.eclipse.virgo.ide.jdt.core.test.classpathentry). This can be changed manually (in the .classpath file).

The PAR and Bundle nature have been renamed (com.springsource.server.ide.facet.core.bundlenature -> org.eclipse.virgo.ide.facet.core.bundlenature and (com.springsource.server.ide.facet.core.parnature -> org.eclipse.virgo.ide.facet.core.parnature)). This can be changed manually (in the .project file).

The format and name of a PAR project changed. Rename .settings/com.springsource.server.ide.runtime.core.par.xml to .settings/org.eclipse.virgo.ide.runtime.core.par.xml. Inside the file rename occurences of com.springsource.server to org.eclipse.virgo.

Inside the WST settings file (.settings/org.eclipse.wst.common.project.facet.core.xml) rename occurences of com.springsource.server.bundle to org.eclipse.virgo.server.bundle and occurences of com.springsource.server.par to org.eclipse.virgo.server.par.

Most/all of the conversion should be done by the following script (it has only see marginal testing, use at your own risk):

#!/bin/sh
# NOTE1: Run this at your own risk :)
# NOTE2: I should quote more dots in sed expressions but I'm lazy.
# TODO: Delete old com.springsource files after conversion
if [ ! -d "$1" ]; then 
        echo "Please point me at an eclipse project" ; 
        exit 1
fi

# Bundlor settings
f="$1/.settings/com.springsource.server.ide.bundlor.core.prefs"
[ -f "$f" ] &&  (
        echo "$1: Converting bundlor preferences"
        sed -e 's/com\.springsource\.server/org.eclipse.virgo/g' "$f" > "$(echo $f | sed -e s/com.springsource.server/org.eclipse.virgo/)"
)

# convert PAR
f="$1/.settings/com.springsource.server.ide.runtime.core.par.xml"
[ -f "$f" ] &&  (
        echo "$1: Converting PAR project dependencies"
        sed -e 's/com\.springsource\.server/org.eclipse.virgo/g' "$f" > "$(echo $f | sed -e s/com.springsource.server/org.eclipse.virgo/)"
)

# Fix classpaths        
f="$1/.classpath"
[ -f "$f" ] && (
        echo "$1: Converting classpath containers and entries"
        sed -i \
                -e 's/com.springsource.server.ide.jdt.core.MANIFEST_CLASSPATH_CONTAINER/org.eclipse.virgo.ide.jdt.core.MANIFEST_CLASSPATH_CONTAINER/g' \
                -e 's/com.springsource.server.ide.jdt.core.test.classpathentry/org.eclipse.virgo.ide.jdt.core.test.classpathentry/g' \
                "$f"
)
        
# Fix natures..
f="$1/.project"
[ -f "$f" ] && (
        echo "$1: Converting project natures"
        sed -i \
                -e 's/com.springsource.server.ide.facet.core.bundlenature/org.eclipse.virgo.ide.facet.core.bundlenature/g' \
                -e 's/com.springsource.server.ide.facet.core.parnature/org.eclipse.virgo.ide.facet.core.parnature/g' \
                "$f"
)

# Fix the wst file, could also replace runtime name here
f="$1/.settings/org.eclipse.wst.common.project.facet.core.xml"
[ -f "$f" ] && (
        echo "$1: Converting org.eclipse.wst.common.project.facet.core.xml"
        sed -i \
                -e 's/com.springsource.server.bundle/org.eclipse.virgo.server.bundle/g'  \
                -e 's/com.springsource.server.par/org.eclipse.virgo.server.par/g'  \
                "$f"
)


Back to the top