eclipse-ease-addons / engines

Eclipse Public License 1.0
0 stars 1 forks source link

Jython is "over" expanded #1

Open jonahgraham opened 7 years ago

jonahgraham commented 7 years ago

In the history of Jython for EASE, Jython used to be shipped as a single JAR based on standalone jar from jython.org. This was OK, but the Jython EASe script engine was created in such a way that the python library files (e.g. io.py) were not accessible (see https://github.com/eclipse-ease-addons/jython/issues/1). This led to the entire jython jar being expanded. While this works, it leads to nearly 20000 files in the org.jython plugin.

On Windows, in particular, this is a problem because it takes a very long time to unzip the plugin (as part of an installer for e.g.). A reasonably large Eclipse based product I have been developing for is > 1GB installed, but contains < 7000 files. As install time is related to both file count and file size, the result is that around 1/2 of install time is the jython package and that adding EASE basically doubled the install time.

Fortunately there is an easy workaround, package up jython better. That is the Lib directory should be expanded, but jython.jar shouldn't be.

jonahgraham commented 7 years ago

I think that the following gives an appropriately expanded version:

java -jar jython-installer-2.7.0.jar --silent --directory /tmp/jython/install --type minimum --include mod

It matches roughly Pydev's included Jython.

Note that the standalone jar when run directly does work find with libraries, not sure how Jython handles that. But even so, at the moment PyDev does not support jython in that format either.

Pontesegger commented 7 years ago

Changed the packaging as proposed. Installation works, basic functionality too. Jonah could you give it a try and do some extended testing?

jonahgraham commented 7 years ago

Yes I will do the testing.