Message:

   The following issue has been re-assigned.

   Assignee: Eric Pugh (mailto:[EMAIL PROTECTED])
---------------------------------------------------------------------
View the issue:
  http://opensource.atlassian.com/projects/xdoclet/browse/XDT-411

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: XDT-411
    Summary: remove the requirement for a user to declare the xdoclet task 
dependencies in project.xml file
       Type: Improvement

     Status: Open
   Priority: Minor

 Original Estimate: 0 minutes
 Time Spent: Unknown
  Remaining: 0 minutes

    Project: XDoclet
 Components: 
             Maven Plugin
   Versions:
             1.2 Beta 3

   Assignee: Eric Pugh
   Reporter: Neeme Praks

    Created: Fri, 28 Mar 2003 3:24 AM
    Updated: Thu, 23 Sep 2004 12:54 PM
Environment: all

Description:
Currently the xdoclet maven plugin requires that the user should declare the specific 
xdoclet dependencies in his/her project.xml file. This is error-prone (not all the 
dependencies are obvious), tedious and clutters up the project.xml file with 
irrelevant information.

A better approach would be to remove this requirement. How?
The plugin.jelly generation should be aware of the dependencies of each module (this 
information is already included in module.xml file, under each module directory) and 
it should add module specific depencencies to the classpath of the relevant taskdef.
For example, ejbdoclet taskdef would then look like this:
<taskdef name="ejbdoclet" classname="xdoclet.modules.ejb.EjbDocletTask">
<classpath>
<path refid="maven.dependency.classpath"/>
    <pathelement path="${plugin.getDependencyPath('xdoclet')}"/>
    <pathelement path="${plugin.getDependencyPath('xdoclet+xjavadoc')}"/>
    <pathelement path="${plugin.getDependencyPath('xdoclet+xdoclet-module')}"/>
    <pathelement path="${plugin.getDependencyPath('commons-collections')}"/>
    <pathelement path="${plugin.getDependencyPath('commons-logging')}"/>
    <pathelement path="${plugin.getDependencyPath('log4j')}"/>
<!-- module specific -->
    <pathelement path="${plugin.getDependencyPath('xdoclet+ejb-module')}"/>
    <pathelement path="${plugin.getDependencyPath('xdoclet+jboss-module')}"/>
    <pathelement path="${plugin.getDependencyPath('xdoclet+jmx-module')}"/>
    <pathelement path="${plugin.getDependencyPath('xdoclet+web-module')}"/>
    <pathelement path="${plugin.getDependencyPath('ejb')}"/>
</classpath>
</taskdef>

Also, the project.xml file inside the plugin should either declare a dependency on all 
the xdoclet modules or plugin.jelly script should be smart enough to dynamically add 
specific dependencies, when needed (not sure if this is possible in maven, but I think 
it should be).

As a temporary solution, project.xml could just declare dependency on all the modules.


---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://opensource.atlassian.com/projects/xdoclet/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira



-------------------------------------------------------
This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170
Project Admins to receive an Apple iPod Mini FREE for your judgement on
who ports your project to Linux PPC the best. Sponsored by IBM.
Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php
_______________________________________________
xdoclet-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/xdoclet-devel

Reply via email to