I found on the Maven list that eclipse:eclipse is supposed to operate
differently if run from a Parent POM. In that case, rather than setting
up the classpath to refer to dependencies defined in maven as binary jar
files in the local repository, it sets up the classpath to refer to
other projects in the workspace (if they exist in the workspace).
But this *feature* appears to be broken for plugin projects, or maybe
it's not broken, but we need to fix something in our POMs for the
runtime plugin project.
-Marshall
Marshall Schor wrote:
If you run eclipse:eclipse goal in the root POM project (uimaj), it
runs, but doesn't do the right things. It doesn't reliably set up
linked resources in the .project, and doesn't reliably set up the
.classpath file with the proper entries for those linked resources.
The observed result is that you get compliation failures in Eclipse -
saying it can't find things that are in the linked jars.
The fix is to run eclipse:eclipse in the individual projects, not at
the root project.
Also, beware of running eclipse:clean goal on the root project - it
erases the .project file because it is "cleaning", and then won't put
it back (it sees this is a POM project, not a JAR project, and won't
put .project files in the POM project).
If anyone has any insight on how to get the eclipse:eclipse goal to
work from the root, that would be nice to hear.
-Marshall