Hi Benson,
I think a good example is cxf-api. It depends on:
- neethi
- cxf-common utilities
- cxf-common-schemas
- geronimo-activation
- geronimo-j2ee-connector_1.5_spec
- XmlSchema
- wstx-asl
- geronimo-annotation_1.0_spec
When you include transitive dependencies it is even worse:
- wsdl4j
- commons-lang
- geronimo-stax-api_1.0_spec
- spring-context
- jaxb-api
- xml-resolver
- spring-beans
- aopaliance
- spring-core
- commons-logging
No one can tell me that an api package needs all this. ;-)
Most transitive dependencies come from cxf-common-utilities. So I think
a good starting point would be to try to remove the dependency to
commons-utilities.
To keep track of dependencies we could do some metrics. For example we
could track the number of direct and transitive dependencies for each
module over time. Then we could set the goal for us all to try to lower
the dependency numbers over time.
Greetings
Christian
Benson Margulies schrieb:
Christian,
This perhaps ought to move to dev, but ...
What exactly do you have in mind when you say, 'clean out'?
It might be one of several things.
1) Divorce CXF entirely from some of its dependencies.
2) Document much more carefully what you actually have to have to
operate in various popular scenarios.
3) tweak the Maven dependencies so that a vanilla user doing a vanilla
build downloads a less stuff?
--benson
--
Christian Schneider
---
http://www.liquid-reality.de
--
Christian Schneider
---
http://www.liquid-reality.de