jira.codehaus.org

  • Log In Access more options
    • Online Help
    • Keyboard Shortcuts
    • About JIRA
    • JIRA Credits
    • What?s New
  • Dashboards Access more options (Alt+d)
  • Projects Access more options (Alt+p)
  • Issues Access more options (Alt+i)
  • Maven 2 & 3
  • MNG-4081

Subtle case: Avoid resolving artifacts from outside the reactor for plugins and extensions whose projects are inside the reactor

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Improvement Improvement
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Duplicate
  • Affects Version/s: 2.1.0-M1
  • Fix Version/s: None
  • Component/s: None
  • Labels:
    None
  • Complexity:
    Intermediate

Description

DefaultLifecycleExecutor.constructLifecycleMappings() can trigger the resolution of all the plugins declared in the project's build section. When this happens, even if those plugins are in the current reactor, that version will not be used. Instead, since those plugin artifacts haven't been built yet, the plugin will be resolved externally and bound into the plugin collector for later use. This means that even if the plugin itself isn't used until after it's build in the reactor, that version won't be used.

I'm still investigating exactly how build extensions will interact with the reactor, but I suspect they cannot be available from the current reactor either, since build extensions are loaded up front and for the entire reactor at once. I'll post an update once I've explored that section of the code.

Issue Links

is related to

Bug - A problem which impairs or prevents the functions of the product. MNG-1911 Building plugins with extensions in a reactor fails

  • Critical - Crashes, loss of data, severe memory leak.
  • Open - The issue is open and ready for the assignee to start work on it.

Bug - A problem which impairs or prevents the functions of the product. MNG-2135 multi-project build that creates it's own plugins needs bootstrapping

  • Major - Major loss of function.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Improvement - An improvement or enhancement to an existing feature or task. MNG-4075 Tone down warnings about reactor dependencies that don't have an associated file

  • Major - Major loss of function.
  • Closed - The issue is considered finished, the resolution is correct. Issues which are not closed can be reopened.

Activity

Ascending order - Click to sort in descending order
  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
John Casey added a comment - 10/Mar/09 12:14 PM

Looking at DefaultExtensionManager.addExtension(..), extensions aren't even looked for in the current reactor. I suppose this makes sense, given how early extensions are added to the build runtime.

Show
John Casey added a comment - 10/Mar/09 12:14 PM Looking at DefaultExtensionManager.addExtension(..), extensions aren't even looked for in the current reactor. I suppose this makes sense, given how early extensions are added to the build runtime.
Hide
Permalink
John Casey added a comment - 10/Mar/09 12:16 PM

This issue is a spin-off from MNG-4075, since it attempts to address the deeper issue of what to do with plugins and extensions that cannot be resolved from within the reactor at the point where they're first resolved...even if they may be available when they're first used.

Show
John Casey added a comment - 10/Mar/09 12:16 PM This issue is a spin-off from MNG-4075, since it attempts to address the deeper issue of what to do with plugins and extensions that cannot be resolved from within the reactor at the point where they're first resolved...even if they may be available when they're first used.
Hide
Permalink
Brett Porter added a comment - 31/Dec/09 12:33 AM

for review under 3.0-alpha. Would be good to have a test case.

Show
Brett Porter added a comment - 31/Dec/09 12:33 AM for review under 3.0-alpha. Would be good to have a test case.
Hide
Permalink
Benjamin Bentmann added a comment - 01/Apr/10 11:11 AM

For plugins, we can employ the reactor output (MNG-2135) and for extensions, we need an update to the model as outlined in another issue (MNG-1911).

Show
Benjamin Bentmann added a comment - 01/Apr/10 11:11 AM For plugins, we can employ the reactor output (MNG-2135) and for extensions, we need an update to the model as outlined in another issue (MNG-1911).

People

  • Assignee:
    Benjamin Bentmann
    Reporter:
    John Casey
Vote (0)
Watch (0)

Dates

  • Created:
    10/Mar/09 12:10 PM
    Updated:
    01/Apr/10 11:11 AM
    Resolved:
    01/Apr/10 11:11 AM
  • Atlassian JIRA (v5.0.4#731-sha1:3aa7374)
  • Report a problem
  • Powered by a free Atlassian JIRA open source license for Codehaus. Try JIRA - bug tracking software for your team.