简体   繁体   中英

how to start a java application system-independent at Windows startup

I want to automatically run a Java application under Windows at startup time, but not depending on a specical Windows or a special JRE-version.

Generally, a good way to run programs at Windows login time would be to add a registry entry under

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 

But it seems as if the system PATH is not evaluated when Windows tries to run the programs listed in the registry's RUN section.

So these both entries do work:

"C:\Program Files\Java\jdk1.8.0_111\bin\javaw" -jar c:\path\to\java.jar
"C:\ProgramData\Oracle\java\javapath\javaw" -jar c:\path\to\java.jar

But this one doesn't come up:

javaw -jar c:\path\to\java.jar

Now, the latter works when manually entered in a console window because there the required PATH exists and is evaluated:

PATH=....;C:\ProgramData\Oracle\Java\javapath;....

Now, I want to have the registry entry added from an automated installer programm and I would like to have it formed "windows-system-independent" (from Vista up to Win 10, and furthermore not depending from the version of the installed JRE). So I do not know a general path to the JRE and therefore I cannot add a specific RUN-command to the registry.

Does anyone know how to add JRE-calls system-independent correctly to the registry's RUN-section?

I've already tried with a command-file, eg "startup.cmd" with content java -jar file.jar there, have added a call of this file to the registry, and yes that worked, java was found, the application was started, but when using this method I have an annoying black command terminal window staying open all the time while the java app is running.

Thanx, Tombo

Change your startup.cmd, from

java -jar file.jar

to

start java -jar file.jar

This will launch the java.exe in a new process an let your batch executor terminate.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM