Ok, after clearing out my local repo (renaming it) on a few machines
and trying from scratch I ran into a few serious issues.
I get a NullPointerException from the merge web xml stuff in the maven-
googlewebtoolkit2-sample project (the one with inheritance, not the
simplesample, actually the war sub-project specifically).
If I switch back my repo things work again, so something is missing
from a clean slate for the non simple sample - bad news. I tried to
troubleshoot it, but as usual with Maven, it's a nightmare. With the -
e and -X and so on I can see that the problem is ultimately this:
Caused by: java.lang.NullPointerException
at
org.apache.maven.artifact.manager.DefaultWagonManager.getArtifact(DefaultWagonManager.java:
296)
at
org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:
194)
at
org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:
73)
at
com.totsp.mavenplugin.gwt.util.BuildClasspathUtil.injectGwtDepsFromRepo(BuildClasspathUtil.java:
173)
at
com.totsp.mavenplugin.gwt.util.BuildClasspathUtil.buildClasspathList(BuildClasspathUtil.java:
75)
at
com.totsp.mavenplugin.gwt.AbstractGWTMojo.fixThreadClasspath(AbstractGWTMojo.java:
321)
But, I changed out the behavior of injectGwtDepsFromRepo a few times,
and verified in it that gwtDev and gwtUser are NOT null, and neither
is localRepository or resolver, and I still get the NPE from other
areas, back to DefaultWagonManager. Then if I look carefully at my X
output I see that I am using maven-artifact-plugin 2.0 - NOT 2.0.9 or
2.0.4 or whatever. Yet, I can't find a src xref for plain 2.0. All I
can get to is this:
http://maven.apache.org/ref/current/maven-artifact-manager/xref/org/apache/maven/artifact/manager/DefaultWagonManager.html.
It says "// TODO [BP]: The exception handling here needs some work" in
the neighborhood, but I can't really tell exactly what the error is,
yet. Don't get me wrong, I am sure it's something stupid I AM DOING,
somewhere, but I Maven just makes me want to stab a pencil in my eye
sometimes when it comes to chasing things down.
When I get a chance I will compare what's different between the repos
and try to figure it out more - and run Maven in a debugger. For now,
FYI - the new version does have some issues in some scenarios.