Jump to content
Excelsior Forums
user129

Just a stripped down JRE

Recommended Posts

I downloaded a trial copy of Excelsior JET and I am impressed with the size reduction achieved. However, it does far more things than what I need.

This is my scenario

I ship a JRE(Sun) with my application for Windows Desktop. My application is a jar file.

My setup MSI is around 30 MB - most of the size is because of the JRE. My jar file is less than 2MB.

I am looking for this.

1) MSI size reduction (big time)

2) I don't want my jar touched at all. i.e. I don't want optimizations in my code.

3) I am looking for 2 things.

Check dependencies in my jar.

Give a stripped down smaller size JRE required to run my application.

4) I don't want an EXE created

5) I don't want packaging done - I will do that on my own.

Is there a way I can do this with Excelsior?

Share this post


Link to post
Share on other sites

I downloaded a trial copy of Excelsior JET and I am impressed with the size reduction achieved. However, it does far more things than what I need.

This is my scenario

I ship a JRE(Sun) with my application for Windows Desktop. My application is a jar file.

My setup MSI is around 30 MB - most of the size is because of the JRE. My jar file is less than 2MB.

I am looking for this.

1) MSI size reduction (big time)

2) I don't want my jar touched at all. i.e. I don't want optimizations in my code.

3) I am looking for 2 things.

Check dependencies in my jar.

Give a stripped down smaller size JRE required to run my application.

4) I don't want an EXE created

5) I don't want packaging done - I will do that on my own.

Is there a way I can do this with Excelsior?

If you need all 1-5 at once, then the answer is no.

Excelsior JET is complete JVM with static compilation feature. Java Runtime Slim-Down feature of Excelsior JET is only possible via global analysys of your program to understand what parts of JRE is actually used. And this is done via static compilation of your program into executable.

However, if you would like to ship Oracle JRE with your application you may look at pack200 utility that comes with Oracle JDK. It may help you reducing the size of your setup in some extent.

Share this post


Link to post
Share on other sites

However, if you would like to ship Oracle JRE with your application you may look at pack200 utility that comes with Oracle JDK. It may help you reducing the size of your setup in some extent.

I am not particular about what JRE I ship as long as it's works well & is small. Does anyone know what compression Oracle uses for creating the JRE offline installer.

Oracle's 6.12 offline JRE installer (jre-6u12-windows-i586-p.exe) around 15 MB in size.

My app (essentially a jar file) packaged without the JRE using installshield gives a 4MB MSI.

I installed 6.12 JRE on my machine & then copied the full JRE directory to my installshield directory & recreated my installer (making it install the JRE in my apps directory instead of "Program files" like the Oracle Installer does). My new MSI came out to be 30MB. Is installshield's compression so much worse than whatever Oracle uses?

Share this post


Link to post
Share on other sites

Just again: google "pack200".

I am not particular about what JRE I ship as long as it's works well & is small.

So, why not to use Excelsior JET then? It is possible to use it with MSI but you have to ship exe. On the other hand as MSI is Microsoft centric, I do not understand why you do not want to ship exe.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×