I'm just about to check in a build structure for the 2.x otests. It's
a step forward, but it's not the total solution.
The otest code is imported from the OASIS svn repo,  and had some
attributes of maven project source structure,  but is not built with
maven. It has src/main/java and src/main/resources, but a large set of
immediate sub directories of src/main/resources are source directories
for contributions. The test code expects to find a contribution in a
directory of its own.

We can superimpose a maven build structure closer to what we are
familiar with in Tuscany by setting up a reactor pom in Tuscany
subversion, mirroring the structure of the OASIS directories.  Each of
our directories contains a pom that defines source and output
directories by relative path using ../src/main/resources/...   to
reference resources from the OASIS extraction,  and to define the
location of the outputs. Having collected those outputs one final pom
in that "tests" output directory tree runs the tests.

The new reactor pom can also be used to create eclipse project files
too, one per contribution.  One thing I havent managed to figure out
yet is how to get maven to generate eclipse style symbolic links in
the .project file. That would allow us to see the source for the
contribution from within the eclipse projects.  As it stands you can
just run each project as a unit test. I see our own maven eclipse
plugin has some commented out code in it that seems to relate to
adding these stanzas to the .project file,  but I couldn't work out
immediately how to enable that function.  I see that the non-Tuscany
maven eclipse plugin has a number of JIRAS asking for this function
over a couple of years,  but the only sign of that function coming is
an unapplied patch.  If anyone can help here I'd be very grateful.

In the meantime, if you want to configure the generated projects
manually to reference the source, you can use the eclipse "New
Folder"'s advanced controls to link to a folder on the file system
outside of the project's root directory.

As I said, this is a first step.  Ideally I wouldn't need to check in
the mirror directory hierarchy, because we could probably get maven to
generate that; but this is one step at a time.  Also,  I had to write
a hokey script that created the directories and POMs, which would
become redundant if we could get maven to generate those too.
However,  once this is done,  at least you'll be able to go to the
otests directory and run mvn and mvn eclipse:eclipse to run and work
with the oasis tests.

The way I've been working with these tests until now is to set up one
single eclipse project with multiple source folders, source folder
exclusions and output directories, all configured by hand.  If anyone
wants me to share that with them I can write down what I have done,
and post my .classpath file,  but it is a bit of a management
nightmare.

Kelvin.

--

Reply via email to