Hey Dan,
Thanks for starting this effort! I raised https://issues.apache.org/jira/browse/SMX4-1494 to keep track of our progress. Thanks again! Gert On Mon, Jul 1, 2013 at 7:45 PM, Daniel Kulp <[email protected]> wrote: > > I did a bit of cleanup in just the smx4-features XML and Camel 2.10.x branch > and was able to shave off about 25MB from the assembly. There is certainly > more to go. We now have about 53MB of "duplicate" jars (which is down from > over 100MB). I've attached the list below. A bunch of them we certainly > need to have the various versions (like ehcache due to incompatible changes > between 2.5.1 and 2.5.2). Others are pulled in from jclouds or activemq or > similar and thus would e hard to resolve. Some would require better support > from Karaf to really resolve (like the duplicate Spring jars) or an > enhancement to the plugin would be great (like exclude the CXF activemq stuff > as the activemq pom can supply a workable version). > > The bottom bunch are things that really should be looked at more in depth. A > couple can be fixed by updating the versions in the smx-nmr features.xml > (which I don't have checked out on my computer right now). Others are likely > fixable by flipping from the smx bundled versions of commons-* to the actual > commons-* versions. Saxon is something that needs a bit more testing. > I've had some bad luck updating that in OSGi before. > > Anyway, here's a starting point for some work. :-) In anycase the tar.gz > is now down below 290M. Still huge though. > > Dan > > > > 1424 ./com/hazelcast/hazelcast/1.9.4/hazelcast-1.9.4.jar > 1660 ./com/hazelcast/hazelcast/2.0.2/hazelcast-2.0.2.jar > 60 ./commons-codec/commons-codec/1.4/commons-codec-1.4.jar > 228 ./commons-codec/commons-codec/1.6/commons-codec-1.6.jar > 276 ./commons-lang/commons-lang/2.5/commons-lang-2.5.jar > 280 ./commons-lang/commons-lang/2.6/commons-lang-2.6.jar > 208 ./commons-net/commons-net/2.2/commons-net-2.2.jar > 268 ./commons-net/commons-net/3.1/commons-net-3.1.jar > 96 ./commons-pool/commons-pool/1.5.4/commons-pool-1.5.4.jar > 112 ./commons-pool/commons-pool/1.6/commons-pool-1.6.jar > 484 ./javax/mail/mail/1.4.4/mail-1.4.4.jar > 500 ./javax/mail/mail/1.4.5/mail-1.4.5.jar > 532 ./joda-time/joda-time/1.6.2/joda-time-1.6.2.jar > 560 ./joda-time/joda-time/2.1/joda-time-2.1.jar > 116 > ./org/apache/activemq/activemq-console/5.4.2/activemq-console-5.4.2.jar > 124 > ./org/apache/activemq/activemq-console/5.7.0/activemq-console-5.7.0.jar > 3244 ./org/apache/activemq/activemq-core/5.4.2/activemq-core-5.4.2.jar > 3872 ./org/apache/activemq/activemq-core/5.7.0/activemq-core-5.7.0.jar > 36 ./org/apache/activemq/activemq-pool/5.4.2/activemq-pool-5.4.2.jar > 48 ./org/apache/activemq/activemq-pool/5.7.0/activemq-pool-5.7.0.jar > 84 ./org/apache/activemq/activemq-ra/5.4.2/activemq-ra-5.4.2.jar > 88 ./org/apache/activemq/activemq-ra/5.7.0/activemq-ra-5.7.0.jar > 152 ./org/apache/activemq/kahadb/5.4.2/kahadb-5.4.2.jar > 184 ./org/apache/activemq/kahadb/5.7.0/kahadb-5.7.0.jar > 160 > ./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.2-incubating/org.apache.aries.transaction.manager-0.2-incubating.jar > 172 > ./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3/org.apache.aries.transaction.manager-0.3.jar > 172 > ./org/apache/aries/transaction/org.apache.aries.transaction.manager/0.3.1/org.apache.aries.transaction.manager-0.3.1.jar > 488 > ./org/apache/httpcomponents/httpclient-osgi/4.1.1/httpclient-osgi-4.1.1.jar > 528 > ./org/apache/httpcomponents/httpclient-osgi/4.1.3/httpclient-osgi-4.1.3.jar > 796 > ./org/apache/httpcomponents/httpclient-osgi/4.2.1/httpclient-osgi-4.2.1.jar > 336 ./org/apache/httpcomponents/httpcore-osgi/4.1/httpcore-osgi-4.1.jar > 376 > ./org/apache/httpcomponents/httpcore-osgi/4.1.4/httpcore-osgi-4.1.4.jar > 504 > ./org/apache/httpcomponents/httpcore-osgi/4.2.1/httpcore-osgi-4.2.1.jar > 284 > ./org/apache/jackrabbit/jackrabbit-jcr-commons/2.2.12/jackrabbit-jcr-commons-2.2.12.jar > 344 > ./org/apache/jackrabbit/jackrabbit-jcr-commons/2.5.2/jackrabbit-jcr-commons-2.5.2.jar > 632 ./org/apache/mina/mina-core/2.0.5/mina-core-2.0.5.jar > 632 ./org/apache/mina/mina-core/2.0.7/mina-core-2.0.7.jar > 444 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/2.7.7_5/org.apache.servicemix.bundles.antlr-2.7.7_5.jar > 560 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr/3.0.1_6/org.apache.servicemix.bundles.antlr-3.0.1_6.jar > 112 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.antlr-runtime/3.0.1_2/org.apache.servicemix.bundles.antlr-runtime-3.0.1_2.jar > 16 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_5/org.apache.servicemix.bundles.aopalliance-1.0_5.jar > 20 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_6/org.apache.servicemix.bundles.aopalliance-1.0_6.jar > 184 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/2.2.3_5/org.apache.servicemix.bundles.asm-2.2.3_5.jar > 232 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.asm/3.3.1_1/org.apache.servicemix.bundles.asm-3.3.1_1.jar > 308 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_6/org.apache.servicemix.bundles.commons-httpclient-3.1_6.jar > 312 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-httpclient/3.1_7/org.apache.servicemix.bundles.commons-httpclient-3.1_7.jar > 316 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_2/org.apache.servicemix.bundles.dom4j-1.6.1_2.jar > 320 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.dom4j/1.6.1_5/org.apache.servicemix.bundles.dom4j-1.6.1_5.jar > 1272 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.1_1/org.apache.servicemix.bundles.ehcache-2.5.1_1.jar > 1284 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ehcache/2.5.2_1/org.apache.servicemix.bundles.ehcache-2.5.2_1.jar > 136 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.6_1/org.apache.servicemix.bundles.jasypt-1.6_1.jar > 128 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jasypt/1.9.0_1/org.apache.servicemix.bundles.jasypt-1.9.0_1.jar > 192 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.44_2/org.apache.servicemix.bundles.jsch-0.1.44_2.jar > 232 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsch/0.1.48_1/org.apache.servicemix.bundles.jsch-0.1.48_1.jar > 308 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_2/org.apache.servicemix.bundles.jsmpp-2.1.0_2.jar > 312 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.jsmpp/2.1.0_4/org.apache.servicemix.bundles.jsmpp-2.1.0_4.jar > 748 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.3.Final_2/org.apache.servicemix.bundles.netty-3.2.3.Final_2.jar > 764 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.netty/3.2.7.Final_1/org.apache.servicemix.bundles.netty-3.2.7.Final_1.jar > 72 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_3/org.apache.servicemix.bundles.oro-2.0.8_3.jar > 76 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.oro/2.0.8_6/org.apache.servicemix.bundles.oro-2.0.8_6.jar > 332 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.3.0_3/org.apache.servicemix.bundles.protobuf-java-2.3.0_3.jar > 452 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.protobuf-java/2.4.1_1/org.apache.servicemix.bundles.protobuf-java-2.4.1_1.jar > 396 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.10.1_1/org.apache.servicemix.bundles.snmp4j-1.10.1_1.jar > 284 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.snmp4j/1.8.1_4/org.apache.servicemix.bundles.snmp4j-1.8.1_4.jar > 452 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_4/org.apache.servicemix.bundles.velocity-1.7_4.jar > 448 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.velocity/1.7_5/org.apache.servicemix.bundles.velocity-1.7_5.jar > 84 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.werken-xpath/0.9.4_5/org.apache.servicemix.bundles.werken-xpath-0.9.4_5.jar > 2692 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.5.0_2/org.apache.servicemix.bundles.xmlbeans-2.5.0_2.jar > 2696 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xmlbeans/2.6.0_2/org.apache.servicemix.bundles.xmlbeans-2.6.0_2.jar > 128 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_5/org.apache.servicemix.bundles.xpp3-1.1.4c_5.jar > 128 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xpp3/1.1.4c_6/org.apache.servicemix.bundles.xpp3-1.1.4c_6.jar > 416 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.3_3/org.apache.servicemix.bundles.xstream-1.3_3.jar > 488 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.xstream/1.4.2_2/org.apache.servicemix.bundles.xstream-1.4.2_2.jar > 36 > ./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/1.9.0/org.apache.servicemix.specs.scripting-api-1.0-1.9.0.jar > 36 > ./org/apache/servicemix/specs/org.apache.servicemix.specs.scripting-api-1.0/2.2.0/org.apache.servicemix.specs.scripting-api-1.0-2.2.0.jar > 48 > ./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/1.9.0/org.apache.servicemix.specs.stax-api-1.0-1.9.0.jar > 48 > ./org/apache/servicemix/specs/org.apache.servicemix.specs.stax-api-1.0/2.2.0/org.apache.servicemix.specs.stax-api-1.0-2.2.0.jar > 324 ./org/apache/sshd/sshd-core/0.6.0/sshd-core-0.6.0.jar > 368 ./org/apache/sshd/sshd-core/0.8.0/sshd-core-0.8.0.jar > 108 ./org/fusesource/hawtdispatch/hawtdispatch/1.11/hawtdispatch-1.11.jar > 108 ./org/fusesource/hawtdispatch/hawtdispatch/1.12/hawtdispatch-1.12.jar > 104 > ./org/fusesource/hawtdispatch/hawtdispatch-transport/1.11/hawtdispatch-transport-1.11.jar > 124 > ./org/fusesource/hawtdispatch/hawtdispatch-transport/1.12/hawtdispatch-transport-1.12.jar > 112 ./org/fusesource/mqtt-client/mqtt-client/1.3/mqtt-client-1.3.jar > 112 ./org/fusesource/mqtt-client/mqtt-client/1.4/mqtt-client-1.4.jar > 320 > ./org/springframework/spring-aop/2.5.6.SEC03/spring-aop-2.5.6.SEC03.jar > 316 > ./org/springframework/spring-aop/3.0.7.RELEASE/spring-aop-3.0.7.RELEASE.jar > 480 > ./org/springframework/spring-beans/2.5.6.SEC03/spring-beans-2.5.6.SEC03.jar > 544 > ./org/springframework/spring-beans/3.0.7.RELEASE/spring-beans-3.0.7.RELEASE.jar > 468 > ./org/springframework/spring-context/2.5.6.SEC03/spring-context-2.5.6.SEC03.jar > 656 > ./org/springframework/spring-context/3.0.7.RELEASE/spring-context-3.0.7.RELEASE.jar > 96 > ./org/springframework/spring-context-support/2.5.6.SEC03/spring-context-support-2.5.6.SEC03.jar > 100 > ./org/springframework/spring-context-support/3.0.7.RELEASE/spring-context-support-3.0.7.RELEASE.jar > 280 > ./org/springframework/spring-core/2.5.6.SEC03/spring-core-2.5.6.SEC03.jar > 376 > ./org/springframework/spring-core/3.0.7.RELEASE/spring-core-3.0.7.RELEASE.jar > 192 > ./org/springframework/spring-web/2.5.6.SEC03/spring-web-2.5.6.SEC03.jar > 392 > ./org/springframework/spring-web/3.0.7.RELEASE/spring-web-3.0.7.RELEASE.jar > 396 > ./org/springframework/spring-webmvc/2.5.6.SEC03/spring-webmvc-2.5.6.SEC03.jar > 412 > ./org/springframework/spring-webmvc/3.0.7.RELEASE/spring-webmvc-3.0.7.RELEASE.jar > > 156 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_3/org.apache.servicemix.bundles.wsdl4j-1.6.2_3.jar > 156 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.wsdl4j/1.6.2_6/org.apache.servicemix.bundles.wsdl4j-1.6.2_6.jar > 1284 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_4/org.apache.servicemix.bundles.ant-1.7.0_4.jar > 1288 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.ant/1.7.0_6/org.apache.servicemix.bundles.ant-1.7.0_6.jar > 248 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-beanutils/1.8.3_1/org.apache.servicemix.bundles.commons-beanutils-1.8.3_1.jar > 572 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-collections/3.2.1_1/org.apache.servicemix.bundles.commons-collections-3.2.1_1.jar > 360 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.commons-vfs/1.0_5/org.apache.servicemix.bundles.commons-vfs-1.0_5.jar > 2688 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.3.0.11_2/org.apache.servicemix.bundles.saxon-9.3.0.11_2.jar > 2808 > ./org/apache/servicemix/bundles/org.apache.servicemix.bundles.saxon/9.4.0.1_2/org.apache.servicemix.bundles.saxon-9.4.0.1_2.jar > 53704 total > > > > On Jun 27, 2013, at 4:57 PM, Gert Vanthienen <[email protected]> > wrote: > >> L.S., >> >> >> On the Apache ServiceMix 4.5.2 vote thread, Dan brought up the fact >> that there now is a 100 MB upload limit to the dist repository. Our >> -full assembly is definitely larger than this and we even make things >> a bit worse by adding multiple versions of some bundles into the >> assembly. This usually happens when multiple versions of the same >> bundle are being used across projects. >> >> The obvious solution would be to check those versions across projects >> and try to get them aligned as good as we can, but this will be a >> never-ending task and very hard to keep up in the long run, so I was >> wondering if there was anything else we could do to make this a bit >> easier or more automated. >> >> For Apache ServiceMix 5.0.0, we could also consider the option of only >> shipping a ZIP file. I think it should be possible to create an >> archive that works on both Windows and other operating systems. If we >> could, that would significantly reduce our footprint on Apache's >> infrastructure, though it would still keep us way above the 100 MB >> limit if we keep on shipping the -full assembly. >> >> Personally, I would prefer to keep that assembly around - the >> ease/speed of installation of all the extra features outweighs the >> cost of the extra disk space used on a server in my mind. But that's >> just my personal opinion and we can always consider the option of >> dropping the -full assembly again if it proves too big of an issue for >> infra@ >> >> >> Regards, >> >> Gert > > -- > Daniel Kulp > [email protected] - http://dankulp.com/blog > Talend Community Coder - http://coders.talend.com >
