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.
Thanks,
-john
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]
--
John Casey
Developer, PMC Member - Apache Maven (http://maven.apache.org)
Blog: http://www.ejlife.net/blogs/buildchimp/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
John Casey
Developer, PMC Member - Apache Maven (http://maven.apache.org)
Blog: http://www.ejlife.net/blogs/buildchimp/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]