> So how do I define these dependencies if I am myself the author of such an > artifact, that has different dependencies dependent on the used functionality?
At the first level, you can specify what is compile, runtime and test. That'll help filter out. There isn't any way to classify based on functionality. That's very error prone... Consider you have XmlConfigurator that requires stax in your list of dependencies. You add another class that uses stax, but it is required for some other piece of functionality. Your library still compiles, because the stax dependency is there, and the tests succeed. Meanwhile, another application just broke because a dependency is missing. If your library provides discreet pieces of functionality that are completely isolated from the rest of the code, so much so that it has its own dependencies, they should probably be in a separate library. I know people don't like splitting up libraries for distribution purposes, but with Maven that argument is negated... and you should still be able to build a monolith JAR that has all those dependencies and all the classes for simple distribution too (we definitely aim to provide that functionality for the final release). Hope this answers your question... I was counting the days since transitive dependencies were released before people started to realise just how many dependencies they are actually getting out of some libraries :) At least they are being shown up in the build now, rather than a class cast exception somewhere down the track. I've filed a JIRA issue for what has been planned for later. Cheers, Brett --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
