[ http://jira.codehaus.org/browse/MNG-3450?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_126530 ]
John Casey commented on MNG-3450: --------------------------------- steps to reproduce: 1. create a basic plugin using archetype 2. Make sure the mojo in this plugin specifies '@execute phase="site"' or something similar, such that its maximum phase will not be satisfied yet by 'clean install' 3. make sure that plugin doesn't exist in any way in the repositories (either local or remote) 4. execute the following (making sure the last mojo invocation is fully qualified): mvn clean install org.plugin:my-maven-plugin:1.0-SNAPSHOT:touch Since the plugin isn't resolvable from any repository, the build planner should assign the last task to a late-bound state-management mojo, which will run second-to-last in the build order. Before the test mojo runs, the site phase should be executed, making it possible to check for some basic site files in the target directory, and fail the build if they are missing. I'll write a test plugin for this when I get a chance, but these steps should show the potential problem, if it exists. > build planning may fail to find forked executions on late-bound plugins > ----------------------------------------------------------------------- > > Key: MNG-3450 > URL: http://jira.codehaus.org/browse/MNG-3450 > Project: Maven 2 > Issue Type: Bug > Components: Plugins and Lifecycle > Affects Versions: 2.1-alpha-1 > Reporter: John Casey > > When a plugin cannot be located during the build-planning part of the build > (which happens before any of the plugins execute), that plugin's resolution > is deferred until the first time it's run in the build. Right before the > plugin is scheduled to run, a special internal state-management mojo is > executed to retry plugin resolution. If that fails, the build fails. > However, we need to be sure that plugins that are late-bound in this way and > that specify forked executions of one type or another have their forked > executions included in the build. This would be the first case of a mojo > modifying the build plan in which it is executing (to inject a forked > execution ahead of the next mojo to run, which is the one that was > late-bound). -- 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 - For more information on JIRA, see: http://www.atlassian.com/software/jira