On Thursday, 5 March 2015 at 14:42, Mark Struberg wrote:
> Hi!
>  
> I'm quite confused by the sheer amount of libs we already have in our lib 
> folder. For maven-3.2.1 this is
>  
> 133957 7. Mai 2013 aether-api-0.9.0.M2.jar
> 12637 14. Feb 2014 aether-api.license
> 34117 7. Mai 2013 aether-connector-wagon-0.9.0.M2.jar
> 12637 14. Feb 2014 aether-connector-wagon.license
> 144866 7. Mai 2013 aether-impl-0.9.0.M2.jar
> 12637 14. Feb 2014 aether-impl.license
> 17703 7. Mai 2013 aether-spi-0.9.0.M2.jar
> 12637 14. Feb 2014 aether-spi.license
> 133588 7. Mai 2013 aether-util-0.9.0.M2.jar
> 12637 14. Feb 2014 aether-util.license
> 4467 7. Mai 2013 aopalliance-1.0.jar
> 44908 7. Mai 2013 cdi-api-1.0.jar
> 41123 7. Mai 2013 commons-cli-1.2.jar
> 173587 7. Mai 2013 commons-io-2.2.jar
> 284220 7. Mai 2013 commons-lang-2.6.jar
> 2189117 7. Mai 2013 guava-14.0.1.jar
> 2497 7. Mai 2013 javax.inject-1.jar
> 293671 24. Jul 2013 jsoup-1.7.2.jar
> 3555 14. Feb 2014 jsoup.license
> 5848 7. Mai 2013 jsr250-api-1.0.jar
> 18116 14. Feb 2014 jsr250-api.license
> 61357 14. Feb 2014 maven-aether-provider-3.2.1.jar
> 53651 14. Feb 2014 maven-artifact-3.2.1.jar
> 283790 14. Feb 2014 maven-compat-3.2.1.jar
> 574650 14. Feb 2014 maven-core-3.2.1.jar
> 59433 14. Feb 2014 maven-embedder-3.2.1.jar
> 159855 14. Feb 2014 maven-model-3.2.1.jar
> 165103 14. Feb 2014 maven-model-builder-3.2.1.jar
> 45831 14. Feb 2014 maven-plugin-api-3.2.1.jar
> 25758 14. Feb 2014 maven-repository-metadata-3.2.1.jar
> 42804 14. Feb 2014 maven-settings-3.2.1.jar
> 42738 14. Feb 2014 maven-settings-builder-3.2.1.jar
> 291397 23. Sep 2013 org.eclipse.sisu.inject-0.0.0.M5.jar
> 12637 14. Feb 2014 org.eclipse.sisu.inject.license
> 196544 25. Jul 2013 org.eclipse.sisu.plexus-0.0.0.M5.jar
> 12637 14. Feb 2014 org.eclipse.sisu.plexus.license
> 13350 7. Mai 2013 plexus-cipher-1.7.jar
> 33933 14. Feb 2014 plexus-cipher.license
> 4211 7. Mai 2013 plexus-component-annotations-1.5.5.jar
> 61697 17. Aug 2013 plexus-interpolation-1.19.jar
> 28555 7. Mai 2013 plexus-sec-dispatcher-1.3.jar
> 33933 14. Feb 2014 plexus-sec-dispatcher.license
> 251792 27. Jan 2014 plexus-utils-3.0.17.jar
> 358933 7. Mai 2013 sisu-guice-3.1.3-no_aop.jar
> 26084 24. Jul 2013 slf4j-api-1.7.5.jar
> 11207 14. Feb 2014 slf4j-api.license
> 10680 17. Aug 2013 slf4j-simple-1.7.5.jar
> 11207 14. Feb 2014 slf4j-simple.license
> 11288 14. Jan 2014 wagon-file-2.6.jar
> 1388197 14. Jan 2014 wagon-http-2.6-shaded.jar
> 10373 14. Jan 2014 wagon-http-shared-2.6.jar
> 52572 14. Jan 2014 wagon-provider-api-2.6.jar
>  
>  
> Lets look into details:
>  
>  
> 44908 7. Mai 2013 cdi-api-1.0.jar
>  
> What for? Do we use CDI in maven now? If so, why do we still have guava and 
> guice? -> No then remove it
This provides the standard javax.enterprise.inject.Typed annotation which is 
respected by the container and helps migrate Plexus components (where you want 
to limit their visibility to a specific role) to more standard/modern 
annotations

If you don’t have any components that need this feature then it can be removed 
(or if you prefer to use a non-standard annotation in your components then 
that’s also possible, albeit less portable)
> 41123 7. Mai 2013 commons-cli-1.2.jar
> 173587 7. Mai 2013 commons-io-2.2.jar
> 284220 7. Mai 2013 commons-lang-2.6.jar
>  
> That might clash with many customer projects or is this very well guarded 
> from any plugin classloader?
>  
> In maven-shared-utils we shaded in the few classes we used from this libs.
>  
> 2189117 7. Mai 2013 guava-14.0.1.jar
> This is also used pretty often in custom projects. Same question as for 
> commons-*. Is it well isolated?

I believe so, I haven’t seen any issues with this library and Guava has been 
bundled with Maven long before we changed containers (back when it was called 
google collections)
>  
> 2497 7. Mai 2013 javax.inject-1.jar
> We are only lucky that there is atm only a single version of this spec out 
> there. So currently not much of an issue but a ticking time bomb.

This is for components that want to use the standard JSR330 annotations, and is 
required by Guice - not sure why this is a problem, given that the spec is 
stable (the same applies to the aopalliance spec which is still at 1.0)
> 5848 7. Mai 2013 jsr250-api-1.0.jar
>  
> commons-annotations (JSR-250) are part of the JRE since java-1.4. So why do 
> we add it?
Actually they were added in JavaSE 6, but now that maven core is at this level 
then this library can be removed/excluded - the key annotations are 
@PostConstruct and @PreDestroy which are supported by the container when you 
use setJSR250Lifecycle(true) in the ContainerConfiguration.
>  
> txs and LieGrue,
> strub
>  
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected] 
> (mailto:[email protected])
> For additional commands, e-mail: [email protected] 
> (mailto:[email protected])


Reply via email to