How to configure snap executable?


I have investigated your snap-installer module provided in github. I realize that you provide snap executable within folders of module (example: snap-installer/files/winx64/bin/snap64.exe). And while creating your installer file (within install4j), at Launcher definition part you directly use the exe provided in that folder of module (example: SNAP Desktop Win x64 launcher uses external launcher where selected executable is bin/snap64.exe).

I want to configure that executable file according to my needs. Is there a file showing how you created that executable (snap64.exe) like exe4j configuration file?

Well more specifically I dont know how to configure “Java configuration” screen on install4j while creating new launcher (generate launcher).


The executable files are generated when you create an application based on the NetBeans platform. We have just copied those files to our repository.

Regarding the configuration you refer to step 4. Java invocation, right? The pconvert launcher can serve you as an example.
The snap-runtime.jar is used for the class path and the class org.esa.snap.runtime.Launcher is the main class which is started.
As parameter you have to provide you main class which is then invoked by the Launcher.

What is your intention? Why do you need to create new installers and add new executables?

Thanks for quick reply. I have specific modules clustered as similar to s1tbx, s2tbx etc. and I want those module to be effective in installer file. Somehow I did it except configuration of executable file.

  1. Do you create those executable files (example: snap-installer/files/winx64/bin/snap64.exe) within netbeans? Could you please explain me how to do this?

  2. Yes I mean step 4. Java invocation. I will look at the details of pconvert launcher and try to change it according to my needs. I will let you know results here.

Thanks again.

I think this NetBeans tutorial will help.

Hi again,

I guess I will continue by confguring my own executable similar to pconvert. At 4. Java invocation step, Class path and main class parameters are clear as you explained. What should I provide for -Dsnap.mainClass in VM parameters? SnapApp? I guess not because there is no main entry point in SnapApp. I am a little bit confused at that part.


There you have to provide the main class (your own code) of your application you want to start.

I will use the default one that SNAP is using right now, and I could not find which class it is. In fact I ask that class.