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-2366

child-level transitive dependency builds (http://www.mail-archive.com/users@maven.apache.org/msg32502.html)

  • Log In
  • Views
    • XML
    • Word
    • Printable

Details

  • Type: Wish Wish
  • Status: Closed Closed
  • Priority: Minor Minor
  • Resolution: Duplicate
  • Affects Version/s: 2.0.4
  • Fix Version/s: None
  • Component/s: Dependencies
  • Labels:
    None
  • Complexity:
    Intermediate

Description

I did not a JIRA for this.

My wish list: Maven will implement what being outline in this discussion:
http://www.mail-archive.com/users@maven.apache.org/msg32502.html

–

[m2] child-level transitive dependency builds?

Christopher Cobb
Tue, 10 Jan 2006 08:15:54 -0800

Is it expected/preferred that (all?) builds are normally be done from the
top level? It doesn't seem that this works very well for situations where I
have a specific plugin which should only be used for certain children. Even
if I configure the plugin at the top level, it may not make sense/not work
to invoke it on all the children. So I have been changing into the
appropriate child directories to invoke some plugins, which leads to also
doing iterative builds in those child directories.

If it is expected that we will occasionally/frequently change into child
project to invoke parts of the build (like I do now), then it seems like
child-level builds should do transitive build dependency resolution. So if
I am doing a build in P1, and P1 has some dependencies on P4, and something
in P4 has changed, then P4 should also get built/installed when I am
building P1. It seems like this could be done by adding something like a
<relativePathToProject> tag within each <dependency> for which you would
like build-time transitive dependency resolution. Or, I suppose it could
also be figured out by navigating to the parent pom and examining the
children. Then you could figure out which dependencies are actually
"project siblings" and should be "transitively built".

It looks like sometimes/frequently you need to do child-level builds, and
you may want/need dependent "project siblings" to be build when you do so.

Is there a way to handle this now? Is this an enhancement request?

–

Issue Links

duplicates

New Feature - A new feature of the product, which has yet to be developed. MNG-2576 Make Like Reactor Mode

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

Activity

  • All
  • Comments
  • Work Log
  • History
  • Activity
Hide
Permalink
David Roussel added a comment - 06/Jul/07 3:10 AM

The way I imagined it should work is like this:

ParentProj\pom.xml
ParentProj\ChildA\pom.xml
ParentProj\ChildB\pom.xml
ParentProj\ChildC\pom.xml
ParentProj\ChildD\pom.xml

ChildA depends on ChildB
ChildC depends on ChildA and ChildD

if I do:
cd ParentProj
mvn install

Then all the children get built. But if I do:

cd ParentProj
mvn install ChildA

Then maven works out that ChildA depends on ChildB and builds them both, but does not build ChildC and ChildD.

Show
David Roussel added a comment - 06/Jul/07 3:10 AM The way I imagined it should work is like this: ParentProj\pom.xml ParentProj\ChildA\pom.xml ParentProj\ChildB\pom.xml ParentProj\ChildC\pom.xml ParentProj\ChildD\pom.xml ChildA depends on ChildB ChildC depends on ChildA and ChildD if I do: cd ParentProj mvn install Then all the children get built. But if I do: cd ParentProj mvn install ChildA Then maven works out that ChildA depends on ChildB and builds them both, but does not build ChildC and ChildD.

People

  • Assignee:
    Unassigned
    Reporter:
    Hung Le
Vote (2)
Watch (0)

Dates

  • Created:
    14/Jun/06 1:51 PM
    Updated:
    07/Mar/08 8:07 PM
    Resolved:
    07/Mar/08 8:07 PM
  • 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.