On Aug 14, 2008, at 5:58 PM, John Casey wrote:
Hi Vincent,
Please see MNG-3710.
The issue with the xwiki build on 2.0.10-RC6 seems to be that
pluginManagement information from a child POM is allowed to pollute
the Plugin instance that was inherited from its parent POM. In the
case of xwiki, the xwiki-enterprise-parent contains a Plugin
instance, which is passed down through inheritance through xwiki-
database-parent to xwiki-database-hsqldb. In addition, the xwiki-
database-parent POM specified a plugin execution for the xar plugin,
which is injected into the Plugin definition inside the xwiki-
database-hsqldb project. Since the Plugin instance in the hsqldb
project is *the same instance* as that in the enterprise-parent POM,
this execution information pollutes the enterprise-parent POM.
I have this fixed locally, but I need to distill this use case into
a self-contained integration test that we can use to guard against
regressions in the future. Additionally, I have some ideas for
improvements in Modello that would make this process a little
easier, so I'll file those as well.
I hope to have RC7 out for testing this afternoon.
great detective work, thanks :)
-Vincent
John Casey wrote:
That did it. I added the xwiki repo first, and removed jfreechart
and jackrabbit-core from my local repo, and all's well.
Thanks.
Now, from what I could tell out on CI last night, it seems that the
xar (?) packaging is being picked up in the parent pom (packaging
== pom) for some reason, causing the unxar mojo to be
called...though why it's picking up on the enterprise-wiki artifact
is still a mystery to me for now...maybe it has something to do
with a lifecycle overlay?
As soon as I have the platform built locally, I'll feel more
comfortable putting the enterprise build up on the debugger so I
can see what's the deal.
-john
Vincent Massol wrote:
Hi John,
On Aug 14, 2008, at 12:40 AM, John Casey wrote:
Vincent,
I'm trying to run the build here on my localhost so I can do some
more effective debugging of the lifecycle executor.
However, I'm missing (at least) two jars for the platform build.
Can you give me a pointer on where I can find these? I've done
some looking around on google for the jcr jar, but without much
luck.
I guess you've added the xwiki remote repo to your settings.xml
(see http://dev.xwiki.org/xwiki/bin/view/Community/Building#HInstallingMaven)
Hmm... this is weird. I've tried to locate them in my local repo
and they're not there... But the build works fine without them
here. It seems it's also the case on Hudson:
http://ci.sonatype.org/view/Community%20Test%20Projects/job/XWiki-Enterprise/3/console
Ah I think I know! I think you have the central repo defined first
and thus maven will find the jackrabbit-core jar there and not
from the xwiki remote repo. We had needed to have our own version
because its pom was invalid (see http://jira.codehaus.org/browse/MEV-453)
.
So the solution should be to put the XWiki remote repo before the
central one in your settings.xml.
Thanks
-Vincent
1) jsr170:jcr:jar:1.0
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=jsr170 -DartifactId=jcr -
Dversion=1.0 -Dpackaging=jar -Dfile=/path/to/file
Alternatively, if you host your own repository you can deploy the
file there:
mvn deploy:deploy-file -DgroupId=jsr170 -DartifactId=jcr -
Dversion=1.0 -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -
DrepositoryId=[id]
Path to dependency:
1) com.xpn.xwiki.platform:xwiki-core:jar:1.6-SNAPSHOT
2) org.apache.jackrabbit:jackrabbit-core:jar:1.1
3) jsr170:jcr:jar:1.0
2) gnujaxp:gnujaxp:jar:1.0.0
Try downloading the file manually from the project website.
Then, install it using the command:
mvn install:install-file -DgroupId=gnujaxp -
DartifactId=gnujaxp -Dversion=1.0.0 -Dpackaging=jar -Dfile=/path/
to/file
Alternatively, if you host your own repository you can deploy the
file there:
mvn deploy:deploy-file -DgroupId=gnujaxp -DartifactId=gnujaxp
-Dversion=1.0.0 -Dpackaging=jar -Dfile=/path/to/file -Durl=[url] -
DrepositoryId=[id]
Path to dependency:
1) com.xpn.xwiki.platform:xwiki-core:jar:1.6-SNAPSHOT
2) jfree:jfreechart:jar:1.0.0-rc1
3) gnujaxp:gnujaxp:jar:1.0.0
Vincent Massol wrote:
Hi John,
On Aug 13, 2008, at 1:50 AM, John Casey wrote:
do you have a stack trace, and maybe some steps to reproduce?
I've just sent the svn urls in answer to Jason's mail.
The code below fails since the variable resolvedArtifacts is
null. Basically it iterates of the project's artifacts
(this.project.getArtifacts()) but doesn't find any when it should.
To reproduce, check out http://svn.xwiki.org/svnroot/xwiki/enterprise/trunk/
and run mvn install.
The source of the plugin that fails are at:
http://svn.xwiki.org/svnroot/xwiki/platform/xwiki-tools/trunk/xwiki-xar-plugin
Thanks
-Vincent
Vincent Massol wrote:
Hi John,
Just tried it on XWiki and I get an error in a custom plugin
that looks for dependencies in the project. The error I get is:
Caused by: org.apache.maven.plugin.MojoExecutionException:
Artifact [com.xpn.xwiki.products:xwiki-enterprise-wiki] is not
a dependency of the project.
at
com.xpn.xwiki.tool.xar.UnXarMojo.findArtifact(UnXarMojo.java:
120)
And the code causing it in our plugin is:
private Artifact findArtifact() throws MojoExecutionException
{
Artifact resolvedArtifact = null;
getLog().debug(
"Searching for an artifact that matches " + HOOK_OPEN
+ this.groupId + TWO_POINTS
+ this.artifactId + HOOK_CLOSE + DOTDOTDOT);
Iterator it = this.project.getArtifacts().iterator();
while (it.hasNext()) {
Artifact artifact = (Artifact) it.next();
getLog().debug(
"Checking artifact " + HOOK_OPEN +
artifact.getGroupId() + TWO_POINTS
+ artifact.getArtifactId() + TWO_POINTS +
artifact.getType() + HOOK_CLOSE
+ DOTDOTDOT);
if (artifact.getGroupId().equals(this.groupId)
&&
artifact.getArtifactId().equals(this.artifactId)) {
resolvedArtifact = artifact;
break;
}
}
if (resolvedArtifact == null) {
throw new MojoExecutionException("Artifact " +
HOOK_OPEN + this.groupId + TWO_POINTS
+ this.artifactId + HOOK_CLOSE + " is not a
dependency of the project.");
}
return resolvedArtifact;
}
Source here:
http://svn.xwiki.org/svnroot/xwiki/platform/xwiki-tools/trunk/xwiki-xar-plugin/src/main/java/com/xpn/xwiki/tool/xar/UnXarMojo.java
Any idea?
This is working fine with 2.0.9.
Thanks
-Vincent
On Aug 9, 2008, at 12:52 AM, John Casey wrote:
Hi everyone,
Well, I think I've finally managed to reduce the memory
consumption and boost the speed of the RC5 build. In
addition, I've fixed a couple of exceptions that came up - a
NPE related to POM configuration interpolation, and a
ClassCastException related to settings profiles without id's.
The release notes for 2.0.10 (so far) are here:
http://jira.codehaus.org/secure/ReleaseNote.jspa?projectId=10500&styleName=Html&version=14112
You can do a search for recently resolved in that Fix-For
version to see what I resolved for this RC, though the
summary above is a pretty accurate reflection.
The distro is here:
http://people.apache.org/~jdcasey/stage/apache-maven/2.0.10-RC6/org/apache/maven/apache-maven/2.0.10-RC6
Please give it a spin and see what you think!
And, have a good weekend.
-john
-------------------
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]