History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: MPMULTIPROJECT-64
Type: Bug Bug
Status: Closed Closed
Resolution: Cannot Reproduce
Priority: Major Major
Assignee: Lukas Theussl
Reporter: Benoit Xhenseval
Votes: 0
Watchers: 0
Operations

If you were logged in you would be able to see more operations.
Maven 1.x Multi-Project Plugin

goal multiproject:create-nav seems to have lost pom.id

Created: 07/Mar/06 06:21 PM   Updated: 14/Sep/06 10:53 AM
Component/s: None
Affects Version/s: 1.4.1
Fix Version/s: None

Time Tracking:
Not Specified

Environment: maven 1.0.2 but with a couple of plugins upgraded to latest HEAD.
Issue Links:
Duplicate
 


 Description  « Hide
Today I have upgraded the checkstyle plugin to 3.0 from 2.6
This seems to have downloaded a couple of libraries and I now have a strange behaviour for multiproject.

I have also upgraded PMD to 1.8-SNAPSHOT but the following issue appeared before:

When I run "maven multiproject:site", the reactor goes through all sub-projects ok BUT when it reaches the call to <attainGoal name="multiproject:create-nav"/>, it seems to lose the pom.id and declares that I must exclude the XXXX (the top level project" (see line 140 in th eplugin.jelly).

XXXX, which is the pom.id, is replaced by the LAST project contained in the variable ${multiprojects}.

the pom.id seems to have changed between the line just BEFORE the call to multiproject:create-nav and the FIRST line inside create-nav.

If I modify the code to add some log:
<echo>POM.id before calling create-nav ${pom.id}</echo>
<attainGoal name="multiproject:create-nav"/>
...

<goal name="multiproject:create-nav"
prereqs="multiproject:site-init">

<echo>POM.id INSIDE create-nav ${pom.id} and multi ${multiprojects}</echo>
<j:forEach var="reactorProject" items="${multiprojects}">
<echo>POM.id INSIDE LOOP create-nav ${pom.id} and current ${reactorProject.id}</echo>
<j:if test="${reactorProject.id == pom.id}">
<fail message="You must exclude ${pom.id} (the top level project) from the subproject set"/>
</j:if>
</j:forEach>

The pom.id has changed between the first 2 echos. it then matches the last reactorProject.id and th ewhole process fails.

I do not understand why the pom.id is changed somewhere in multiproject:site-init...

My current workaround is to change the <fail to a simple <echo so that the process can finish (but it does not generate a proper navigation.xml)

There is obviously something wrong introduced by the latest download of a couple of plugin, I still have maven 1.0.2

Is there a way I could list all plugins and version? I would post it here...

Thanks for looking into it.

Benoit



 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
Benoit Xhenseval - 07/Mar/06 06:37 PM
Thanks to Arnaud for getting back to me.
Here is the result of maven -i

__ __

\/ __ Apache_ ___
  \/ / ` \ V / -) ' \ ~ intelligent projects ~
_   _,_ _/___ _ _ v. 1.0.2

WARNING: Plugin 'maven-qalab-plugin' is already loaded from maven-qalab-plugin-0.8.0; attempting to load maven-qalab-plugin-0.7.2

          • BEGIN: Which report
            Which.version=Which.java$Revision: 1.2 $) WhichJar.java$Revision: 1.2 $)
            java.version=1.5.0_04
            file.encoding=UTF-8
            java.ext.dirs=/opt/jdk1.5.0_04/jre/lib/ext
            java.class.path=/home/myuserId/maven-1.0.2/lib/forehead-1.0-beta-5.jar
            os.name=Linux
            java.vendor=Sun Microsystems Inc.
            sun.boot.class.path=/home/myuserId/maven-1.0.2/lib/endorsed/xerces-2.4.0.jar:/home/myuserId/maven-1.0.2/lib/endorsed/xml-apis-1.0.b2.jar:/opt/jdk1.5.0_04/jre/lib/rt.jar:/opt/jdk1.5.0_04/jre/lib/i18n.jar:/opt/jdk1.5.0_04/jre/lib/sunrsasign.jar:/opt/jdk1.5.0_04/jre/lib/jsse.jar:/opt/jdk1.5.0_04/jre/lib/jce.jar:/opt/jdk1.5.0_04/jre/lib/charsets.jar:/opt/jdk1.5.0_04/jre/classes
            java.runtime.name=Java(TM) 2 Runtime Environment, Standard Edition
          • END: Which report

Installed plugins:
maven-abbot-plugin-1.1
maven-announcement-plugin-1.3
maven-ant-plugin-1.9
maven-antlr-plugin-1.2.1
maven-appserver-plugin-2.0
maven-artifact-plugin-1.5.2
maven-ashkelon-plugin-1.2
maven-aspectj-plugin-3.2
maven-aspectwerkz-plugin-1.2
maven-beandoc-plugin-0.6
maven-caller-plugin-1.1
maven-castor-plugin-1.2
maven-changelog-plugin-1.8.2
maven-changes-plugin-1.5.1
maven-checkstyle-plugin-3.0.1-SNAPSHOT
maven-clean-plugin-1.3
maven-clover-plugin-1.9.1
maven-cobertura-plugin-1.1.1
maven-console-plugin-1.1
maven-cruisecontrol-plugin-1.7
maven-dashboard-plugin-1.8
maven-developer-activity-plugin-1.5.1
maven-dist-plugin-1.6.1
maven-docbook-plugin-1.2
maven-ear-plugin-1.7
maven-eclipse-plugin-1.9
maven-ejb-plugin-1.6
maven-faq-plugin-1.4
maven-file-activity-plugin-1.5.1
maven-findbugs-plugin-1.0
maven-genapp-plugin-2.2
maven-gump-plugin-2.0.1
maven-hibernate-plugin-1.3
maven-html2xdoc-plugin-1.3.1
maven-idea-plugin-1.5
maven-j2ee-plugin-1.5.1
maven-jalopy-plugin-1.3.1
maven-jar-plugin-1.7
maven-java-plugin-1.5
maven-javacc-plugin-1.1
maven-javadoc-plugin-1.7
maven-jboss-plugin-1.5
maven-jbuilder-plugin-1.5
maven-jcoverage-plugin-1.0.9
maven-jdee-plugin-1.1
maven-jdepend-plugin-1.5
maven-jdeveloper-plugin-1.4
maven-jdiff-plugin-1.4
maven-jellydoc-plugin-1.3.1
maven-jetty-plugin-1.1
maven-jira-plugin-1.1.2
maven-jnlp-plugin-1.4.1
maven-junit-doclet-plugin-1.2
maven-junit-report-plugin-1.5
maven-jxr-plugin-1.4.2
maven-latex-plugin-1.4.1
maven-latka-plugin-1.4.1
maven-license-plugin-1.2
maven-linkcheck-plugin-1.3.4
maven-multichanges-plugin-1.1
maven-multiproject-plugin-1.4.1
maven-native-plugin-1.1
maven-nsis-plugin-1.1
maven-pdf-plugin-2.2.1
maven-plugin-plugin-1.6
maven-pmd-plugin-1.7
maven-pom-plugin-1.4.1
maven-qalab-plugin-0.7.2
maven-qalab-plugin-0.8.0
maven-rar-plugin-1.0
maven-release-plugin-1.4.1
maven-repository-plugin-1.2
maven-scm-plugin-1.4.1
maven-shell-plugin-1.1
maven-simian-plugin-1.5
maven-site-plugin-1.6.1
maven-statcvs-plugin-2.7
maven-struts-plugin-1.3
maven-tasklist-plugin-2.4
maven-test-plugin-1.6.2
maven-tjdo-plugin-1.0.0
maven-uberjar-plugin-1.2
maven-vdoclet-plugin-1.2
maven-war-plugin-1.6.1
maven-webserver-plugin-2.0
maven-wizard-plugin-1.1
maven-xdoc-plugin-1.9.2
maven-ydoc-plugin-1.0.0
Home Build properties:

{maven.jboss.deploy.dir=/home/myuserId/cc/checkout/myapp-proto/jboss, maven.cruisecontrol.home=/home/myuserId/cruisecontrol-2.2.1, maven.qalab.merge.quiet=true, repo.dir=/home/myuserId/.maven/repository, maven.cruisecontrol.mail.host=localhost, maven.jar.pmd=3.1, maven.cruisecontrol.goals=scm:update|multiproject:clean multiproject:site, maven.cruisecontrol.work.dir=/home/myuserId/cc, myapp.cvs.server=localhost, do.obfuscation=false, maven.license.licenseFile=LICENSE.TXT, maven.qalab.chart.quiet=true, maven.qalab.movers.quiet=true}

Lukas Theussl - 08/Mar/06 01:41 AM
Can you confirm that this only happens with maven.multiproject.navigation=aggregate, but not with maven.multiproject.navigation=independent ?

Benoit Xhenseval - 08/Mar/06 04:01 AM
Hi Lukas

It happens with both.

multiproject:create-nav:
[echo] POM.id INSIDE create-nav objectlab:gui and multi [Troy Common, Troy JBoss Ext, Troy Persist, Troy Server, Troy EJB, Troy EJB Acceptance, Troy GUI]
[echo] You must exclude objectlab:gui (the top level project) from the subproject set
[echo] Producing independent navigation...
[echo] Producing user supplied navigation...

Benoit


Lukas Theussl - 08/Mar/06 08:44 AM
Any chance that you could attach a small test project? I remember having seen this issue once but I can't reproduce it anymore now.

Arnaud Heritier - 08/Mar/06 09:11 AM
I encountered it just before http://jira.codehaus.org/browse/MAVEN-1750
I think that you can reproduce it if you run multiproject:site in the plugins-site project
The last plugin fails saying "You must exclude ..."

Lukas Theussl - 18/Apr/06 12:11 PM
Do you have maven.multiproject.includes set to '*/project.xml' (which is the default)?
What happens if you set it explicitly to a comma-separated list of projects to include?

I still cannot get a reproducible test case even though I remember having seen the issue in the past.


Lukas Theussl - 07/Jun/06 05:29 PM
Closing as I still can't reproduce it and there is no user feedback anymore. Please re-open with a reproducible test case if you still have troubles.

Rupert Smith - 14/Sep/06 10:13 AM
Please re-open this issue. The problem seems to be caused by using a the newer checkstyle plugin. Before I upgraded my checkstyle plugin it worked fine, now with checkstyle plugin version 3.0.1 I get this error.

As a workaround, I am able to make the problem go away by not generating the checkstyle report.

Rupert


Lukas Theussl - 14/Sep/06 10:21 AM
As I said above, please attach a test case and reopen the issue, if you can't reopen it, create a new one.
I have spent quite some time on this issue and couldn't reproduce it anymore.
Don't forget to specify your environment settings as well. Thanks!