You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@uima.apache.org by Eric Riebling <er...@cs.cmu.edu> on 2011/03/17 16:17:03 UTC

Missing something basic: can't build Simple Server from instructions

Although I've been using UIMA for years, I seem to be missing something
very basic necessary to build / run / use the Apache UIMA sandbox components.
It has to do with how to build them.

I understand that the normal build mechanism for UIMA Components is to use
Eclipse .project files.  You check a project out of Subversion, and Eclipse
"auto-magically" knows how to build it.

I also understand that the Apache projects do NOT have Eclipse build functionality
by default - the .project files are essentially empty, placeholders if you will.
It seems instead that Apache Maven is the preferred build mechanism, as there
seem to be pom.xml build descriptors, and project source paths look like
"src/main/java..."

What I don't understand, specifically, is for the Simple Server project, how the
documentation can presume that these files are already in the project - they're not.  (in SVN):

     SimpleServer/lib/uima-simple-server.jar
     SimpleServer/lib/uima-simple-server-xbean.jar
     SimpleServer/lib/jsr173_1.0_api.jar
     SimpleServer/lib/xbean.jar

In fact, there's not even a lib/ folder at all.
I can't find any way to build these using Eclipse, or Maven.  The only thing that
comes close is an Ant task(?) description, "build_config_xml.xml" except that it fails:

BUILD FAILED
D:\workspace\SimpleServer\build_config_xml.xml:35: taskdef class org.apache.xmlbeans.impl.tool.XMLBean cannot be found

My question is, am I missing something basic in how I have Eclipse
set up, or how I am going about building Apache UIMA sandbox projects?
If so, is there any documentation on what additional workspace setup is
required to build and use these? - I'm thinking Maven specifics, what
Goals to build, how to add Maven builders to Eclipse.

Thanks,

-er

-- 
Eric Riebling  GHC 6713,  LTI,   SCS,  CMU
412.268.9872   http://www.cs.cmu.edu/~er1k

Re: Missing something basic: can't build Simple Server from instructions

Posted by Marshall Schor <ms...@schor.com>.
Hi Eric,

We use Maven to build UIMA projects.
There is an integration of Maven into Eclipse, which creates the .project and
.classpath files Eclipse needed.

To get this to work, you need to install m2eclipse Eclipse plugin - google
m2eclipse and install the latest (0.12.1) version.

Then, checkout the project from SVN, and use Eclipse Import -> Import existing
Maven project, to import it.

More notes below:

On 3/17/2011 11:17 AM, Eric Riebling wrote:
> Although I've been using UIMA for years, I seem to be missing something
> very basic necessary to build / run / use the Apache UIMA sandbox components.
> It has to do with how to build them.
>
> I understand that the normal build mechanism for UIMA Components is to use
> Eclipse .project files.  

The normal build mechanism for projects at Apache UIMA is to use Maven at the
command line.  (We don't presume users are using Eclipse.)

> You check a project out of Subversion, and Eclipse
> "auto-magically" knows how to build it.

The automagic stuff changed about 1-2 years ago - we switched to using
"m2eclipse" to integrate Maven builds with Eclipse. 

The current process is to check a project out of Subversion (using a command
line interface to SVN) and then to use Eclipse Import -> import existing maven
project (a new menu pick once you install the m2eclipse plugin).

>
> I also understand that the Apache projects do NOT have Eclipse build
> functionality
> by default - the .project files are essentially empty, placeholders if you will.

True .  The .project and .classpath files are not present in SVN.
> It seems instead that Apache Maven is the preferred build mechanism, as there
> seem to be pom.xml build descriptors, and project source paths look like
> "src/main/java..."

Correct.
>
> What I don't understand, specifically, is for the Simple Server project, how the
> documentation can presume that these files are already in the project -
> they're not.  (in SVN):
>
>     SimpleServer/lib/uima-simple-server.jar
>     SimpleServer/lib/uima-simple-server-xbean.jar
>     SimpleServer/lib/jsr173_1.0_api.jar
>     SimpleServer/lib/xbean.jar
>

My guess is that the documentation is written for the binary distribution. 
Here's the big picture:

SVN - holds the source.

Binary Release: is a pre-built version having binary builds, at some particular
version number.


> In fact, there's not even a lib/ folder at all.
> I can't find any way to build these using Eclipse, or Maven.  

This should build by doing the following (I just did this and it worked for me :-) )

1) check out the project from svn:

mkdir someDir
cd someDir
svn checkout http://svn.apache.org/repos/asf/uima/sandbox/trunk/SimpleServer

2) cd to the thing you checked out:
cd SimpleServer

3) run maven to build and install to your local .m2 repo
mvn install

You need Maven 3.0 or later.

This is all done outside of Eclipse.

The M2eclipse docs show how to run builds, etc., inside Eclipse, if you want to
do that.

> The only thing that
> comes close is an Ant task(?) description, "build_config_xml.xml" except that
> it fails:
>
> BUILD FAILED
> D:\workspace\SimpleServer\build_config_xml.xml:35: taskdef class
> org.apache.xmlbeans.impl.tool.XMLBean cannot be found
>
> My question is, am I missing something basic in how I have Eclipse
> set up, or how I am going about building Apache UIMA sandbox projects?
> If so, is there any documentation on what additional workspace setup is
> required to build and use these? - I'm thinking Maven specifics, what
> Goals to build, how to add Maven builders to Eclipse.

The basic documentation on how to do builds from SVN checkouts or source
distributions is on our website, here: http://uima.apache.org/building-uima.html

This also includes various "one-time" setups to do, to be sure you have the
right versions of build tooling, and describes our m2eclipse use.

-Marshall
>
> Thanks,
>
> -er
>