Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Add explanation of importing a hierarchy of projects, various editorial changes

There is already a page that describes how to get started with Eclipse by building a new Tuscany SCA project from scratch. How do you though use the various existing samples and examples that are provided with Tuscany from within Eclipse? Here we'll provide some instructions about how to do just that for both the Maven user and the non-Maven user. As an example we'll look specifically at how to import the introducing-trips contributions and the jumpstart launcher that runs it from the Tuscany SCA Travel Sample> We'll also explain how to use the same approach to import other samples such as the samples in the Tuscany SCA Java binary distribution and the complete travel sample code.

These instructions assume that samples the sample code being loaded into Eclipse has been downloaded and unzipped and that the projects sample modules have already been compiled using Maven or Ant following the instructions in the sample's README. This is important because some of the source in the sample modules is generated during the compile stage and we you'll need to import that into Eclipse along with the other source code and resources that the projects sample modules contain. The These instructions were written using Eclipse 3.5.2.

Both of the approaches described below import the sample modules into Eclipse without copying them. This means that any edits to the sample resources that you see make in Eclipse will result in changes in the directories where you unzipped the sample. You , and you won't therefore see copies of these projects appear in the Eclipse workspace directory on disc. This is generally a useful approach as it lets you work directly on projects outside of the Eclipse workspace. In the case of the travel sample it's particularly important as because there are some cross references between the the various modules in the sample. If you copy the projects out of the sample structure they won't run properly without further editing.

...

Maven has a plugin which will convert a Maven project into an Eclipse project. For example, to load the travel sample's introducing-trips contribution project into Eclipse as a project first do the following:

Code Block
cd travelsample/contributions/introducing-trips
mvn eclipse:eclipse

That generates, amongst other things, .classpath and .project files into the introducing-trips directory. These files effectively make the introducing-trips module an Eclipse project that can be loaded directly into Eclipse. This Eclipse project will reference dependencies in the local Maven repository, based on the contents of the pom.xml file. These dependency references are constructed using and an Eclipse classpath variable called M2_REPO.

The previous example shows how to run a mvn command to create a single Eclipse project. It's often useful to run a single mvn command from a top-level directory to create multiple Eclipse projects. For example, to create Eclipse projects for all the samples in the Tuscany SCA Java 1.6.1 (or later 1.x) binary distribution, you can do the following:

Code Block

cd samples
mvn eclipse:eclipse

This runs the mvn eclipse:eclipse command for all the samples under the top-level samples directory. As well as being more convenient than running a mvn eclipse:eclipse command for each sample, using a single mvn eclipse:eclipse command from a top-level directory enables the Maven plugin to discover any dependency relationships between the samples and create corresponding dependency relationships between the generated Eclipse projects. You can do this for the complete travel sample by doing the following:

Code Block

cd travelsample
mvn eclipse:eclipse

1.2 - Setting the M2_REPO variable

Before loading the project in into Eclipse we you need to set M2_REPO as a classpath variable in our your workspace to tell it where the Maven repository is.

You can do this with maven Maven using the following command.

mvn -Declipse.workspace=<path-to-eclipse-workspace> eclipse:add-maven-repo

Alternatively you can do it manually as follows:Open by opening the Eclipse workspace you’re going to use and then:

...

...

Select

...

Window/Preferences

...


From

...

the

...

resulting

...

“Preferences”

...

dialog

...

select

...

Java/Build

...

Path/Classpath

...

Variables

...


Select

...

the

...

“New…”

...

button

...


In

...

the

...

“Name:”

...

field

...

type

...

M2_REPO

...


In

...

the

...

“Path:”

...

field

...

type

...

<path

...

to

...

your

...

maven

...

repo>

...

1.3 - Loading an existing project into Eclipse

Once M2_REPO is set you can load the project(s) into Eclipse Open by opening the Eclipse workspace you’re going to use and then:

...

Select

...

menu

...

File/Import…

...


From

...

the

...

resulting

...

“Select”

...

dialog

...

box

...

select

...

General/Existing

...

Projects

...

into

...

Workspace

...


From

...

the

...

resulting

...

“Import

...

Projects”

...

dialog

...

box

...

select

...

the

...

“Browse…”

...

button

...

to

...

locate the directory containing the project(s) to import
Select “Finish”

For example, to load the contributions/introducing-trips project from the travel sample, you would select the travelsample/contributions/introducing-trips

...

directory. To load all the Tuscany binary distribution samples you would select the samples directory, and to load the complete travel sample you would select the travelsample directory.

The project should now appear in your workspace.

...

Now you have introducing-trips loaded you can repeat the process for the travel sample launchers/jumpstart module. Repeat step 1.1 for launchers/jumpstart and then load it into eclipse Eclipse with step 1.3. You don't need to repeat step 1.2 as it M2_REPO will remain set.

Now open up the scatours-launcher-jumpstart project in Eclipse (the project name comes from the Maven module name specified in the pom.xml file) and look for the JumpstartLauncher.java file. If you right click on that file and select Run As Application the sample should run. Alternatively you can select Debug As Application if you want to set debugging breakpoints.

You can run other samples by finding the main class and selecting Run As Application.

2 - For the non-Maven user

...

To import projects without using Maven we you first need to make all of the Tuscany libraries available to the SCA projects we load you'll be loading into Eclipse. We're going to You can do this by creating a TUSCANY library variable. Once we you have this set we you can create new projects, load existing resources into them and associate them with the TUSCANY variable so that all the dependencies are satisfied.

...

Follow the steps detailing in the "Install the Tuscany distribution" section of the page that discussed how to get started with Eclipse. For the travel sample you'll need to install the latest 1.6 (or later 1.x) release of the Tuscany SCA Java runtime.

...

Follow the steps detailing in the "Setup Eclipse for Tuscany" section of the page that discussed how to get started with Eclipse. For the travel sample you'll need to install the latest 1.6 (or later 1.x) release of the Tuscany SCA Java runtime. It's a at this stage that the TUSCANY library variable gets set.

...

The next panel allows you to set up the structure of the new project. The source tab allows you to determine where the source code and other resources can be found.
In this case you can just leave the defaults. We do You'll need to configure the introducing-trips/src/main/resources folder as a source folder for the project but it's easier to do this once the project has been created.

...

The Libraries tab allows you to specify the Tuscany jars that are required to compile this module.

WeYou've already configured the TUSCANY library in step 2.2 so you can select this using the Add Library button an selecting User Library in the resulting dialog.

...

Eclipse doesn't automatically pick up some of the folders that have been configured in the Maven modules. These are usually.:

Code Block
src/main/resourceresources
src/test/resourceresources
target/jaxws-source

You need to configure these manually as source directories. Right click on the project and select "Properties" options.

...

2.8 - Running the sample

To run the sample we you need to import launchers/jumpstart by repeating steps 2.3, 2.4, 2.5, 2.6 and 2.7 for the jumpstart project. There is extra work required at step 2.6 this time though. The jumpstart module has unit tests that depend on the junit-4.5.jar that ships in the tuscany-scatours-1.0\lib\junit directory. Add this as a dependency of the project using the "Add External Jars..." button.

...