You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@maven.apache.org by Michael Niemaz <Mi...@xrce.xerox.com> on 2005/05/23 19:26:51 UTC

Including multiproject:site output doc in a distribution

Hi all,
    I am playing with the reactor tag and it works great. All I do is 
generate a zip file containing my sub-projects war files by postgoaling 
the dist:prepare-bin-filesystem goal.

Now, next step is to replace the 'single' project generated doc inserted 
into the distribution package with the one that is generated through 
multiproject:site goal. I tried different methods but in vain.

Any ideas?

thanx,

--mike

Wim Deblauwe wrote:

>I added all information in JIRA: http://jira.codehaus.org/browse/MPDASHBOARD-24
>
>On 5/12/05, Wim Deblauwe <wi...@gmail.com> wrote:
>  
>
>>Hi,
>>
>>found how to do it, but I don't know how to create a patch and I don't
>>have CVS. Can somebody create a patch out of this?
>>
>>In dashboard.jsl, in <jsl:template match="project">:
>>
>>   <j:if test="${shallDisplay == 'true'}">
>>     <tr>
>>       <!-- url not defined in POM -->
>>       <x:set var="pomurl" select="string(@url)"/>
>>       <j:if test="${empty(pomurl)}">
>>         <x:set var="projecturl1" select="string(@artifactId)"/>
>>         <j:set var="projecturl"
>>value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>>         <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>>       </j:if>
>>
>>       <!-- url defined in POM -->
>>       <j:if test="${!empty(pomurl)}">
>>           <td><a href="${pomurl}"><x:expr select="@name"/></a></td>
>>        </j:if>
>>       <jsl:applyTemplates select="aggregator"/>
>>     </tr>
>>   </j:if>
>>
>>In plugin.jelly, under the dashboard:aggregate goal:
>>
>>            <x:element name="project">
>>              <x:attribute name="name">${reactorProject.name}</x:attribute>
>>              <x:attribute
>>name="artifactId">${reactorProject.artifactId}</x:attribute>
>>              <!-- start of my added code -->
>>              <j:if test="${!empty(reactorProject.url)}">
>>                <x:attribute name="url">${reactorProject.url}</x:attribute>
>>              </j:if>
>>               <!-- end of my added code -->
>>              ... rest of code
>>           </x:element>
>>
>>Basically, this is what happens:
>>
>>The pom.url is added to the dashboard-data.xml file. This url is then
>>retrieved in the jsl file via @url. If this @url is not empty, the
>>value of it is used to create the link.
>>
>>regards,
>>
>>Wim
>>
>>On 5/12/05, Wim Deblauwe <wi...@gmail.com> wrote:
>>    
>>
>>>Just tried it but it does not work.
>>>
>>>It uses the pom.url of the master project, not of the subprojects. Any
>>>idea on how I can access those?
>>>
>>>regards,
>>>
>>>Wim
>>>
>>>On 5/12/05, Vincent Massol <vm...@pivolis.com> wrote:
>>>      
>>>
>>>>Hi Wim,
>>>>
>>>>Yes, this is a known limitation (I've only used aggregate multiprojects and
>>>>thus have only implemented this one...).
>>>>
>>>>If you can submit a patch with a test (through JIRA) I could apply it.
>>>>
>>>>Thanks
>>>>-Vincent
>>>>
>>>>        
>>>>
>>>>>-----Original Message-----
>>>>>From: Wim Deblauwe [mailto:wim.deblauwe@gmail.com]
>>>>>Sent: jeudi 12 mai 2005 11:08
>>>>>To: Maven Users List
>>>>>Subject: Dashboard plugin with multiproject independent navigation
>>>>>
>>>>>Hi,
>>>>>
>>>>>the Dashboard plugin seems to assume that the
>>>>>maven.multiproject.navigation property is set to 'aggregate', becuase
>>>>>the links that are generated are like this:
>>>>>
>>>>>    <j:if test="${shallDisplay == 'true'}">
>>>>>      <tr>
>>>>>        <x:set var="projecturl1" select="string(@artifactId)"/>
>>>>>        <j:set var="projecturl"
>>>>>value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>>>>>        <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>>>>>        <jsl:applyTemplates select="aggregator"/>
>>>>>      </tr>
>>>>>    </j:if>
>>>>>
>>>>>Notice the use of maven.multiproject.aggregateDir. But when
>>>>>'independent' navigation is used the plugin should look at the
>>>>>'pom.url' property.
>>>>>
>>>>>Is this a bug or am I missing something?
>>>>>
>>>>>This would probably be a better solution (untested):
>>>>>
>>>>>
>>>>>    <j:if test="${shallDisplay == 'true'}">
>>>>>      <tr>
>>>>>        <!-- url not defined in POM -->
>>>>>        <j:if test="${empty(pom.url)}">
>>>>>        <x:set var="projecturl1" select="string(@artifactId)"/>
>>>>>        <j:set var="projecturl"
>>>>>value="${maven.multiproject.aggregateDir}${projecturl1}/index.html"/>
>>>>>        <td><a href="${projecturl}"><x:expr select="@name"/></a></td>
>>>>>        </j:if>
>>>>>
>>>>>        <!-- url defined in POM -->
>>>>>        <j:if test="${!empty(pom.url)}">
>>>>>            <td><a href="${pom.url}"><x:expr select="@name"/></a></td>
>>>>>         </j:if>
>>>>>        <jsl:applyTemplates select="aggregator"/>
>>>>>      </tr>
>>>>>    </j:if>
>>>>>
>>>>>regards,
>>>>>
>>>>>Wim
>>>>>
>>>>>---------------------------------------------------------------------
>>>>>To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>>>>>For additional commands, e-mail: users-help@maven.apache.org
>>>>>          
>>>>>
>>>>---------------------------------------------------------------------
>>>>To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>>>>For additional commands, e-mail: users-help@maven.apache.org
>>>>
>>>>
>>>>        
>>>>
>
>---------------------------------------------------------------------
>To unsubscribe, e-mail: users-unsubscribe@maven.apache.org
>For additional commands, e-mail: users-help@maven.apache.org
>
>
>  
>