Game install/setup

All games who is being sold in ( physical/virtual ) shops require installiation ( to run setup.exe ).

I tried to create application with java, and it is enought to double-click JAR.

Should my game use installiation, perhaps if some stuff is extracted - game runs faster?

did you create a runnable jar? for my game, I had to use jarsplice to package all the dependencies. With that, I could never get the .exe option to work

I was using eclipse. Runnable jar works.

So you just want to have the file be an .exe?

There is a term now: “self-contained” such as a self-contained jar. With this, the java runtime engine is packed with the program in the jar. I don’t know that these run any faster than when a jvm that is already installed is used. Probably depends mostly on the Java version being invoked.

It is possible to pack a self-contained jar into an exe for installation purposes on Windows. The tool Inno Setup 5 has a Wizard that helps create the setup script used to make the exe. But I don’t think there is anything in the installation process itself that makes the program run faster. The installation just does things like place the program in the Program Files directory, makes links on the Start Menu and Desktop shortcuts, those sorts of things that most Windows Users don’t usually know how to do themselves.

For Java 9 and beyond, the runtime engine is segmented into modules, and you can create customized runtimes that only have the modules needed to run the program! The tool for doing this is called JLINK. These runtimes ARE supposed to run faster and be a lot smaller than a program that packs a full JVM. But I don’t know how much faster.

These pared-down runtimes can also be packed into an exe for installation with Inno Setup 5 or other tools.

I’ve been banging my head on this for several weeks, have finally got it all working. It was kind of hard for me mostly because I am overly reliant on Eclipse and not all that experienced with Windows shell commands and environment variables and things like that. I think some folks here know how to use various scripting languages (like ANT) to run JLINK. I decided to first just figure out how it works at the command line. There is a neighbor thread about about this “Stubbornly insisting on using JLINK for deployment” which has a lot of suggestions about packing a program into an exe for deployment.

With WebStart being phased out, this seems to be the way to go.

The virtues of JWS are that it allows the application to be incrementally loaded and dynamically updated.
Even though it’s a pain to get working, it’s a shame that it’s on the chopping block.

I’m working on a replacement that retains the virtues, bases on a very small java “loader” application,
which is an executable .jar, and which caches and launches the real application. I’m looking for the best
way to package and deploy the loader application to the common platforms.

See this other thread;