Re: Maven and Hudson
They aren't really comparable. Hudson is a Continuous Integration tool. Maven is a build tool. Hudson can use maven for its builds, but they aren't competing products. If you're looking for a build tool its usually between Maven and Ant. If you're looking for a continuous integration server, there are several, but I typically hear people going between hudson and cruisecontrol. Hope that helps. -Tim On 4/7/2010 12:59 PM, Lorenzo Thurman wrote: I hope this question is suitable for the list, if not apologies. Can someone give me a comparison between Maven and Hudson? I'm in the process of testing both of these, but would like some opinions on the strengths/weaknesses of the product. Thanks "My Break-Dancing days are over, but there's always the Funky Chicken" --The Full Monty Lorenzo Thurman lore...@thethurmans.com - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Conflicting Versions Of Same JAR
Sorry to dig up an old thread, but I found as an alternate solution to this. It's an app called JarJar Links: http://code.google.com/p/jarjar/ Just in case anyone else has this issue in the future. Stephen Connolly wrote: maven-shade-plugin after that I have no clue Sent from my [rhymes with myPod] ;-) On 18 Jun 2009, at 18:23, Timothy Orme wrote: Great, thanks for the tips! However, I'm unfamiliar with what you mean by shading and moving it into a different tree and googling for it seems to be difficult. Can you elaborate on what this means or point me to an article? Thanks, Tim O Stephen Connolly wrote: what you probably need to do is shade flying saucer and it's iText dependency into a different package tree. That way it will be separated from the iText your app is using... The other solution is to run inside a OSGi container, as you could define in the bundle manifests that Flying Saucer must use 2.0.8 and your app must use 2.1.3. OSGi will then take care of managing the classloaders for you. Unfortunately in a standard web container, the classloader is what it is, which means that whatever class comes first is the class that gets loaded... which is one of the reasons people resort to shading or OSGi 2009/6/18 Timothy Orme : Hello, I have a JAR and a WAR. My JAR file is used to render PDF files using the Flying Saucer Project. When used in this way, flying saucer requires iText 2.0.8 to be included. So the POM file for my JAR has 2 dependencies: org.xhtmlrenderer : core-renderer : R8pre2 : jar : compile com.lowagie : itext : 2.0.8 : jar : compile My WAR file then includes this JAR and makes calls to it to have PDF's generated. However, the WAR file itself also includes some legacy functionality to generate some other PDF's. However, it requires iText 2.1.3. So my WAR has 2 dependencies: jarA : jarA : 1.0 : jar : compile com.lowagie : itext : 2.1.3 : jar : compile The problem then, is that when I try and make calls from my WAR to methods in that JAR, it seems that it uses iText 2.1.3 instead of 2.0.8, so it breaks because some methods are missing. Everything works as it should when I just use the JAR itself, through JUnit. I cannot upgrade Flying Saucer to use 2.1.3 and it would take a great deal of work to downgrade the WAR to use 2.0.8. My question then, is there a way for me to specify in Maven that the iText 2.0.8 be somehow packaged up with the JAR so that all methods in it use 2.0.8, but anything in the war would use 2.1.3? Thanks, Tim O. - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Re: Conflicting Versions Of Same JAR
Great, thanks for the tips! However, I'm unfamiliar with what you mean by shading and moving it into a different tree and googling for it seems to be difficult. Can you elaborate on what this means or point me to an article? Thanks, Tim O Stephen Connolly wrote: what you probably need to do is shade flying saucer and it's iText dependency into a different package tree. That way it will be separated from the iText your app is using... The other solution is to run inside a OSGi container, as you could define in the bundle manifests that Flying Saucer must use 2.0.8 and your app must use 2.1.3. OSGi will then take care of managing the classloaders for you. Unfortunately in a standard web container, the classloader is what it is, which means that whatever class comes first is the class that gets loaded... which is one of the reasons people resort to shading or OSGi 2009/6/18 Timothy Orme : Hello, I have a JAR and a WAR. My JAR file is used to render PDF files using the Flying Saucer Project. When used in this way, flying saucer requires iText 2.0.8 to be included. So the POM file for my JAR has 2 dependencies: org.xhtmlrenderer : core-renderer : R8pre2 : jar : compile com.lowagie : itext : 2.0.8 : jar : compile My WAR file then includes this JAR and makes calls to it to have PDF's generated. However, the WAR file itself also includes some legacy functionality to generate some other PDF's. However, it requires iText 2.1.3. So my WAR has 2 dependencies: jarA : jarA : 1.0 : jar : compile com.lowagie : itext : 2.1.3 : jar : compile The problem then, is that when I try and make calls from my WAR to methods in that JAR, it seems that it uses iText 2.1.3 instead of 2.0.8, so it breaks because some methods are missing. Everything works as it should when I just use the JAR itself, through JUnit. I cannot upgrade Flying Saucer to use 2.1.3 and it would take a great deal of work to downgrade the WAR to use 2.0.8. My question then, is there a way for me to specify in Maven that the iText 2.0.8 be somehow packaged up with the JAR so that all methods in it use 2.0.8, but anything in the war would use 2.1.3? Thanks, Tim O. - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org
Conflicting Versions Of Same JAR
Hello, I have a JAR and a WAR. My JAR file is used to render PDF files using the Flying Saucer Project. When used in this way, flying saucer requires iText 2.0.8 to be included. So the POM file for my JAR has 2 dependencies: org.xhtmlrenderer : core-renderer : R8pre2 : jar : compile com.lowagie : itext : 2.0.8 : jar : compile My WAR file then includes this JAR and makes calls to it to have PDF's generated. However, the WAR file itself also includes some legacy functionality to generate some other PDF's. However, it requires iText 2.1.3. So my WAR has 2 dependencies: jarA : jarA : 1.0 : jar : compile com.lowagie : itext : 2.1.3 : jar : compile The problem then, is that when I try and make calls from my WAR to methods in that JAR, it seems that it uses iText 2.1.3 instead of 2.0.8, so it breaks because some methods are missing. Everything works as it should when I just use the JAR itself, through JUnit. I cannot upgrade Flying Saucer to use 2.1.3 and it would take a great deal of work to downgrade the WAR to use 2.0.8. My question then, is there a way for me to specify in Maven that the iText 2.0.8 be somehow packaged up with the JAR so that all methods in it use 2.0.8, but anything in the war would use 2.1.3? Thanks, Tim O. - To unsubscribe, e-mail: users-unsubscr...@maven.apache.org For additional commands, e-mail: users-h...@maven.apache.org