Dennis Lundberg wrote:
Srepfler Srgjan wrote:
Hi,
The problem I've bumped in is that commons-logging 1.1 has put a dependency on the servlet-api library and left the default scope. That means servlet-api gets right into my EAR which in turn makes my web application unable to serve my jsp's as it's a library that is provided by the servlet container. I don't declare commons-logging explicitly but I've got a bunch libraries that depend on it implicitly so it would be too hard to exclude the commons-logging lib for all the particular libs and explicitly declare it. For the moment I've manually modified the 1.1 pom but I think that even if the commons-logging team ships a 1.1.1 release as my libs depend on 1.1 I'd still be having issues thanks to the don't replace releases policy in the repository. I'd file a bug but the issue tracker tag in the pom points to bugzilla and they are not listed, so this is a public shout out hoping that it will get picked up. If anyone can raise the issue with the c-logging guys or can make a replace of only the pom in the repository it would be a great community service.
Srgjan

The dependency on servlet-api has had the following added in the current 1.1.1-SNAPSHOT version of the pom:

  <optional>true</optional>

That is great but all the libraries that currently use c-logging and bring in the dependency are breaking my build. I suspect this hasn't been raised as an issue because many are still calling versions before 1.1 and it seems I've added some artifacts that called upon 1.1 and it override the other versions where this problem didn't persist. I wouldn't be surprised if more people discover this problem now (I suspect either the latest version of hibernate or spring 2.0.2 brought in 1.1 bu I could be mistaken). I know the repository policy and I understand the reasoning behind it but modifying the pom would probably not break of any build and the current one does. I would be nice if maven would have a way to declare library aliases in settings.xml so that one can say "use c-logging 1.1.1 instead of 1.1" or "use the glassfish implementation of jta instead of the sun implementation". That would allow quick fixes without the need to disturb Carlos for these minor things. Now if we go in that direction, a nice tangent would be if we can add an automated feedback of these aliases which could be some sort of a retroactive loop that could improve the quality of the artifacts. Let me explan. The repository remains the same. We know there are may flaws in the current pom's but we don't change the pom's because that generally creates more problems then benefits. I we would have this alternative knowledge base of aliases or alternative pom's (that contain diff's of the original pom), we could declare use that lib but also apply items #234 and #543 from the knowledge base plus apply this local patch. Plus you could even submit that back and people could use it as well. To me this does seems like a complication of the maven model but it's also a much more dynamic "bazaar'ish" model of development that combines both the traditional approach and a dynamic, organic way of improving the repository while retaining the declarative approach. I'm also aware this would (perhaps) need a db that is much more difficult to replicate then the current repository mirroring system and would probably require more CPU power. It's just a tangent thought.

Srgjan

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to