[ http://jira.codehaus.org/browse/MDEP-149?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Benjamin Bentmann updated MDEP-149: ----------------------------------- Attachment: MDEP-149.zip Here are some (pathological) demo projects if you want to try this out. Run "mvn install" on api and impl, then "mvn dependency:analyze" on impl-client. Without the patch, the plugin warns that impl-client uses api although there is not a single souce code line directly referencing any type from api. > Field accesses and method invocations cause bogus dependencies > -------------------------------------------------------------- > > Key: MDEP-149 > URL: http://jira.codehaus.org/browse/MDEP-149 > Project: Maven 2.x Dependency Plugin > Issue Type: Bug > Components: analyze > Affects Versions: 2.0 > Reporter: Benjamin Bentmann > Assignee: Brian Fox > Priority: Trivial > Attachments: bogus-dependencies.patch, MDEP-149.zip > > > When hunting down some "Used undeclared dependencies" warnings, I found the > plugin lying. For example, the line > {code:java} > java.lang.Object var = bean.field; > {code} > does not impose a direct dependency on the field's type, whatever it may be. > Likewise, the line > {code:java} > bean.method(null); > {code} > does not directly depend on the method's return type nor parameter types. > Unless I explicitly code a reference to a type by means of variable > declarations, type checks/casts etc., there is no need to declare > dependencies that are already brought in via transitivity, that's what Maven > was invented for, isn't is ;-) -- 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