To reduce the size of the war files, we might clean/reorganize some jar files.

I’m currently removing/moving some jars from the /lib folder.

Removed from lib folder:

asm-attrs.jar
junit-4.7.jar  -> moved to /lib-test replacing older junit
urlrewrite.jar
xercesImpl.jar
kamikaze-3.0.6.jar (updated bobo-browse removes this dependency)
javaee.jar -> replaced with javax-servlet.jar
backport-util-concurrent.jar

Minified jars (only containing classes which are used by us or some jar, done with tool autojar) are:

fastutil-minified-6.4.4.jar (fastutil-6.4.2-shrinked.jar previously)
icu4j-3_8-jasypt.jar (icu4j-3_8.jar previously)
jasypt-minified-1.9.0.jar (jasypt-1.9.0.jar previously)

I’ve made an analysis with jaranalyze which I use to find unused jar libs: view webdslJarAnalyze.xml

Currently, strategoxt.jar is the largest one, counting 13114 classes and taking about 15MB
I’m not sure yet if strategoxt.jar is needed for deployed web applications. If not, we need to move this jar. Edit: Tested it on some apps by removing the jar, they still work fine.

Submitted by Elmer van Chastelet on 2 December 2012 at 16:16

On 3 December 2012 at 00:24 Danny Groenewegen commented:

The strategoxt.jar is only needed when you are invoking JSGLR or Stratego from WebDSL, this usage is demonstrated in the following test file: https://svn.strategoxt.org/repos/WebDSL/webdsls/trunk/test/succeed/stratego/strategocalls.app. Researchr uses it for Bibtex parsing and normalization.


On 3 December 2012 at 11:44 Elmer van Chastelet commented:

Strategoxt.jar is now excluded to be copied to the libfolder of the deployed app. This may be problematic for apps that use stratego code from within their apps.
The stratego functionality will become a plugin like elib (with twitter bootstrap templates). This way, we can leave out the large strategoxt.jar by default.


On 8 March 2016 at 12:54 Elmer van Chastelet closed this issue.

Log in to post comments