You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@maven.apache.org by ji...@codehaus.org on 2003/09/05 06:29:10 UTC

[jira] Created: (MAVEN-785) improve the functionality and feature set of the existing MavenTask

Message:

  A new issue has been created in JIRA.

---------------------------------------------------------------------
View the issue:

  http://jira.codehaus.org/secure/ViewIssue.jspa?key=MAVEN-785


Here is an overview of the issue:
---------------------------------------------------------------------
        Key: MAVEN-785
    Summary: improve the functionality and feature set of the existing MavenTask
       Type: Improvement

     Status: Unassigned
   Priority: Major

 Time Spent: Unknown
  Remaining: 1 hour

    Project: maven
 Components: 
             core
   Versions:
             1.0-rc1

   Assignee: 
   Reporter: John Casey

    Created: Thu, 4 Sep 2003 11:28 PM
    Updated: Thu, 4 Sep 2003 11:28 PM
Environment: all environments, running Ant

Description:
The current version of MavenTask offers only the most limited functionality, limits the user in goal achievement per maven invocation, and seems arcane in its function when run against the most current version of maven.

I propose to give this task a facelift, and offer every option via Ant which would be available to the user from the command line, including multiple goals, property definition, and all of the options like goal listing and debug, which are listed from the help screen (maven -h).

Attached to this issue is a complete rewrite of MavenTask, from the ground up.  It invokes maven via Forehead, to avoid recoding the complex classloader logic; to reduce the required classpath libraries declared in the build.xml file; and to simplify the function of this task itself. It allows subtasks for goals and properties, and resets the system properties of its execution environment when complete.

Please note that the new functionality does not preclude backward compatibility.  I have re-added the old attribute methods in order to soothe the transition from old to new versions.

Invocation in the new task would look like this:

<project name="something" basedir="." default="hello">

  <property name="maven.home" value="c:/maven" />

  <taskdef name="maven" class="org.apache.maven.ant.MavenTask">
    <classpath>
      <pathelement location="${maven.home}/lib/maven.jar" />
    </classpath>
  </taskdef>

  <target name="hello">

    <maven mavenHome="${maven.home}"
           jdkToolsClasses="c:/java/lib/tools.jar"
           foreheadClasses="${maven.home}/lib/forehead.jar"
           dir="${basedir}"
           debug="true"
           showStackTraces="true">
      
      <property name="my.property" value="test" />
      <goal name="say-hello" />

    </maven>

  </target>

</project>


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

If you think it was sent incorrectly contact one of the administrators:
   http://jira.codehaus.org/secure/Administrators.jspa

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


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@maven.apache.org
For additional commands, e-mail: dev-help@maven.apache.org