Hello Everyone,
After a lot of investigation and work I have a patch that reduces the OFBiz dependencies by 65 libraries and converts some libraries from compile to runtime. Everything compiles and all tests pass. I think this is as lean as we can get without refactoring code. I am listing the libraries in here before committing the work just to make sure that I didn't remove anything vital that tests did not catch. I appreciate your feedback if you have experience and know that any of these libraries should be added back. moved from build.gradle to specialpurpose/example/build.gradle ------------------------------------------------------------------------------------ - compile 'org.apache.tomcat.embed:tomcat-embed-websocket:8.0.33' changed from compile time to runtime in build.gradle --------------------------------------------------------------------- - runtime 'org.apache.axis2:axis2-transport-http:1.7.1' - runtime 'org.apache.axis2:axis2-transport-local:1.7.1' - runtime 'org.apache.derby:derby:10.11.1.1' - runtime 'org.apache.logging.log4j:log4j-core:2.3' - runtime 'org.apache.logging.log4j:log4j-slf4j-impl:2.3' Removed from dependencies in build.gradle ---------------------------------------------------------- - compile 'apache-xerces:resolver:2.9.1' - compile 'avalon-framework:avalon-framework-impl:4.2.0' - compile 'bouncycastle:bouncycastle-jce-jdk13:112' - compile 'com.fasterxml.jackson.core:jackson-annotations:2.4.0' - compile 'com.fasterxml.jackson.core:jackson-core:2.4.2' - compile 'com.google.guava:guava:19.0' - compile 'commons-beanutils:commons-beanutils-core:1.8.3' - compile 'commons-codec:commons-codec:1.10' - compile 'commons-el:commons-el:1.0' - compile 'commons-fileupload:commons-fileupload:1.3.1' - compile 'commons-io:commons-io:2.4' - compile 'commons-logging:commons-logging:1.2' - compile 'de.odysseus.juel:juel-spi:2.2.7' - compile 'httpunit:httpunit:1.7' - compile 'jython:jython:2.1' - compile 'net.sf.barcode4j:barcode4j-fop-ext-complete:2.0' - compile 'net.sf.dozer:dozer:4.2.1' - compile 'net.sf.ezmorph:ezmorph:0.9.1' - compile 'net.sourceforge.nekohtml:nekohtml:1.9.16' - compile 'org.apache.ant:ant-apache-bsf:1.9.0' - compile 'org.apache.ant:ant-launcher:1.9.0' - compile 'org.apache.axis2:axis2-adb:1.7.1' - compile 'org.apache.commons:commons-compress:1.11' - compile 'org.apache.commons:commons-pool2:2.3' - compile 'org.apache.geronimo.specs:geronimo-activation_1.0.2_spec:1.0' - compile 'org.apache.geronimo.specs:geronimo-j2ee-connector_1.5_spec:2.0.0' - compile 'org.apache.geronimo.specs:geronimo-jaxr_1.0_spec:1.0' - compile 'org.apache.geronimo.specs:geronimo-jaxrpc_1.1_spec:1.1' - compile 'org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1' - compile 'org.apache.geronimo.specs:geronimo-saaj_1.3_spec:1.1' - compile 'org.apache.httpcomponents:httpcore:4.4.1' - compile 'org.apache.logging.log4j:log4j-1.2-api:2.3' - compile 'org.apache.logging.log4j:log4j-nosql:2.3' - compile 'org.apache.neethi:neethi:3.0.3' - compile 'org.apache.pdfbox:fontbox:1.8.11' - compile 'org.apache.pdfbox:jempbox:1.8.11' - compile 'org.apache.pdfbox:pdfbox:1.8.12' - compile 'org.apache.servicemix.bundles:org.apache.servicemix.bundles.xpp3:1.1.4c_7' - compile 'org.apache.tomcat:tomcat-annotations-api:7.0.54' - compile 'org.apache.tomcat:tomcat-api:8.0.33' - compile 'org.apache.tomcat:tomcat-coyote:8.0.33' - compile 'org.apache.tomcat:tomcat-jni:8.0.33' - compile 'org.apache.tomcat:tomcat-util-scan:8.0.33' - compile 'org.apache.tomcat:tomcat-util:8.0.33' - compile 'org.apache.tomcat.extras:tomcat-extras-juli-adapters:8.0.33' - compile 'org.apache.tomcat.extras:tomcat-extras-juli:8.0.33' - compile 'org.apache.woden:woden-core:1.0M10' - compile 'org.apache.ws.commons.axiom:axiom-api:1.2.17' - compile 'org.apache.ws.commons.axiom:axiom-impl:1.2.17' - compile 'org.apache.ws.commons.util:ws-commons-util:1.0.2' - compile 'org.apache.ws.xmlschema:xmlschema-core:2.2.1' - compile 'org.apache.xalan:com.springsource.org.apache.xml.serializer:2.7.1' - compile 'org.apache.xmlgraphics:xmlgraphics-commons:2.1' - compile 'org.apache.xmlrpc:xmlrpc-common:3.1.2' - compile 'org.codeartisans.thirdparties.swing:batik-all:1.8pre-r1084380' - compile 'org.dom4j:com.springsource.org.dom4j:1.6.1' - compile 'org.eclipse.jdt.core.compiler:ecj:4.5' - compile 'org.jdom:jdom:1.1' - compile 'org.lucee:commons-lang:2.6.0' - compile 'org.slf4j:slf4j-api:1.6.4' - compile 'org.springframework:spring-core:4.2.3.RELEASE' - compile 'ws-commons-java5:ws-commons-java5:1.0.1' - compile 'xalan:xalan:2.7.2' - compile 'xml-apis:xml-apis-ext:1.3.04' - compile 'xml-apis:xml-apis:1.4.01' Regards, Taher Alkhateeb |
Err, I just realized I'm missing some runtime dependencies for tomcat,
although all tests pass running the server is missing a few items. So, this makes me want feedback even more :) So appreciate the help On Wed, Jul 27, 2016 at 9:31 PM, Taher Alkhateeb <[hidden email] > wrote: > Hello Everyone, > > After a lot of investigation and work I have a patch that reduces the > OFBiz dependencies by 65 libraries and converts some libraries from compile > to runtime. Everything compiles and all tests pass. I think this is as lean > as we can get without refactoring code. > > I am listing the libraries in here before committing the work just to make > sure that I didn't remove anything vital that tests did not catch. I > appreciate your feedback if you have experience and know that any of these > libraries should be added back. > > moved from build.gradle to specialpurpose/example/build.gradle > > ------------------------------------------------------------------------------------ > > - compile 'org.apache.tomcat.embed:tomcat-embed-websocket:8.0.33' > > changed from compile time to runtime in build.gradle > --------------------------------------------------------------------- > > - runtime 'org.apache.axis2:axis2-transport-http:1.7.1' > - runtime 'org.apache.axis2:axis2-transport-local:1.7.1' > - runtime 'org.apache.derby:derby:10.11.1.1' > - runtime 'org.apache.logging.log4j:log4j-core:2.3' > - runtime 'org.apache.logging.log4j:log4j-slf4j-impl:2.3' > > Removed from dependencies in build.gradle > ---------------------------------------------------------- > > - compile 'apache-xerces:resolver:2.9.1' > - compile 'avalon-framework:avalon-framework-impl:4.2.0' > - compile 'bouncycastle:bouncycastle-jce-jdk13:112' > - compile 'com.fasterxml.jackson.core:jackson-annotations:2.4.0' > - compile 'com.fasterxml.jackson.core:jackson-core:2.4.2' > - compile 'com.google.guava:guava:19.0' > - compile 'commons-beanutils:commons-beanutils-core:1.8.3' > - compile 'commons-codec:commons-codec:1.10' > - compile 'commons-el:commons-el:1.0' > - compile 'commons-fileupload:commons-fileupload:1.3.1' > - compile 'commons-io:commons-io:2.4' > - compile 'commons-logging:commons-logging:1.2' > - compile 'de.odysseus.juel:juel-spi:2.2.7' > - compile 'httpunit:httpunit:1.7' > - compile 'jython:jython:2.1' > - compile 'net.sf.barcode4j:barcode4j-fop-ext-complete:2.0' > - compile 'net.sf.dozer:dozer:4.2.1' > - compile 'net.sf.ezmorph:ezmorph:0.9.1' > - compile 'net.sourceforge.nekohtml:nekohtml:1.9.16' > - compile 'org.apache.ant:ant-apache-bsf:1.9.0' > - compile 'org.apache.ant:ant-launcher:1.9.0' > - compile 'org.apache.axis2:axis2-adb:1.7.1' > - compile 'org.apache.commons:commons-compress:1.11' > - compile 'org.apache.commons:commons-pool2:2.3' > - compile 'org.apache.geronimo.specs:geronimo-activation_1.0.2_spec:1.0' > - compile > 'org.apache.geronimo.specs:geronimo-j2ee-connector_1.5_spec:2.0.0' > - compile 'org.apache.geronimo.specs:geronimo-jaxr_1.0_spec:1.0' > - compile 'org.apache.geronimo.specs:geronimo-jaxrpc_1.1_spec:1.1' > - compile 'org.apache.geronimo.specs:geronimo-jta_1.1_spec:1.1.1' > - compile 'org.apache.geronimo.specs:geronimo-saaj_1.3_spec:1.1' > - compile 'org.apache.httpcomponents:httpcore:4.4.1' > - compile 'org.apache.logging.log4j:log4j-1.2-api:2.3' > - compile 'org.apache.logging.log4j:log4j-nosql:2.3' > - compile 'org.apache.neethi:neethi:3.0.3' > - compile 'org.apache.pdfbox:fontbox:1.8.11' > - compile 'org.apache.pdfbox:jempbox:1.8.11' > - compile 'org.apache.pdfbox:pdfbox:1.8.12' > - compile > 'org.apache.servicemix.bundles:org.apache.servicemix.bundles.xpp3:1.1.4c_7' > - compile 'org.apache.tomcat:tomcat-annotations-api:7.0.54' > - compile 'org.apache.tomcat:tomcat-api:8.0.33' > - compile 'org.apache.tomcat:tomcat-coyote:8.0.33' > - compile 'org.apache.tomcat:tomcat-jni:8.0.33' > - compile 'org.apache.tomcat:tomcat-util-scan:8.0.33' > - compile 'org.apache.tomcat:tomcat-util:8.0.33' > - compile 'org.apache.tomcat.extras:tomcat-extras-juli-adapters:8.0.33' > - compile 'org.apache.tomcat.extras:tomcat-extras-juli:8.0.33' > - compile 'org.apache.woden:woden-core:1.0M10' > - compile 'org.apache.ws.commons.axiom:axiom-api:1.2.17' > - compile 'org.apache.ws.commons.axiom:axiom-impl:1.2.17' > - compile 'org.apache.ws.commons.util:ws-commons-util:1.0.2' > - compile 'org.apache.ws.xmlschema:xmlschema-core:2.2.1' > - compile > 'org.apache.xalan:com.springsource.org.apache.xml.serializer:2.7.1' > - compile 'org.apache.xmlgraphics:xmlgraphics-commons:2.1' > - compile 'org.apache.xmlrpc:xmlrpc-common:3.1.2' > - compile 'org.codeartisans.thirdparties.swing:batik-all:1.8pre-r1084380' > - compile 'org.dom4j:com.springsource.org.dom4j:1.6.1' > - compile 'org.eclipse.jdt.core.compiler:ecj:4.5' > - compile 'org.jdom:jdom:1.1' > - compile 'org.lucee:commons-lang:2.6.0' > - compile 'org.slf4j:slf4j-api:1.6.4' > - compile 'org.springframework:spring-core:4.2.3.RELEASE' > - compile 'ws-commons-java5:ws-commons-java5:1.0.1' > - compile 'xalan:xalan:2.7.2' > - compile 'xml-apis:xml-apis-ext:1.3.04' > - compile 'xml-apis:xml-apis:1.4.01' > > Regards, > > Taher Alkhateeb > |
Free forum by Nabble | Edit this page |