I've run into an issue where the current behavior of building a project
model in Maven 2.0.x seems wrong. In the case of inheritance of dependency
scope, there is a default value of "compile". This default will override the
parent scope. This part is correct. But if the dependency scope is not
specified, the default value CAN be overridden by the dependency management
section of the pom. So in one case, the default value can't be overridden,
but in the other case it can.

I'm thinking that both dependencyManagement and inheritance should function
the same in Maven 3. If the developer doesn't specify a value, the default
value should be applied to the model (prior to any inheritance or
management). This would mean that dependencyManagement dependency container
will not be joined with a dependency container, unless the scope specified
in one matched the default scope in the other. Thoughts?

Shane

Reply via email to