History | Log In     View a printable version of the current page.  
Issue Details (XML | Word | Printable)

Key: MNG-831
Type: Improvement Improvement
Status: Reopened Reopened
Priority: Major Major
Assignee: Unassigned
Reporter: Mark Hobson
Votes: 1
Watchers: 1
Operations

If you were logged in you would be able to see more operations.
Maven 2

[toolchain] Improve plugin API to ease configuration sharing between plugins

Created: 03/Sep/05 04:23 AM   Updated: 05/Sep/07 02:19 AM
Component/s: Plugin API
Affects Version/s: 2.0-beta-1
Fix Version/s: 3.0

Time Tracking:
Not Specified

Issue Links:
Related
 

Complexity: Intermediate


 Description  « Hide
Plugins that need to introspect other plugin's configuration have to go via the Xpp3Dom configuration object. It'd be nice if this was easier for plugin authors. Some current use-cases are:
  • Eclipse plugin requires compiler plugin's configuration to write .settings file
  • Tomcat plugin requires war plugin's configuration to locate final war file and exploded state


 All   Comments   Work Log   Change History      Sort Order: Ascending order - Click to sort in descending order
John Casey - 27/Sep/05 01:23 PM
How much of this can be handled by POM-level properties? I'm not wild about providing a direct line of communications between any two plugins, since that could easily establish a de facto dependency between them. Mediating through the POM seems like a good idea, if it's feasible.

Brett Porter - 27/Sep/05 06:05 PM
I agree with John. This is covered by properties and MNG-823 (assuming you are after it in the lifecycle and using its modified configuration). A plugin must expose what configuration to share.

Mark Hobson - 28/Sep/05 03:40 AM
As long as the properties that a plugin sets are well documented and namespaced. My only concern is property name clashes with user pom properties - would it be safer using the plugin context from MNG-823 across multiple plugins? That way the properties are isolated from the user and only accessible by the plugin developers.

Brett Porter - 28/Sep/05 04:02 AM
I misunderstood what 823 was - it is only within the same plugin.

I have this use case for the IDEA plugin too - so I'll check whether it is necessary. Making such dependencies between plugins is one of the big pitfalls we had in m1 however, so this needs to be very carefully considered.


Brett Porter - 05/Sep/07 02:19 AM
I think toolchain + build context eliminates the need for this