Tengo un archivo JAR que contiene una aplicación Java. ¿Cómo puedo hacer que comience con Windows, sin necesidad de la interacción del usuario?Ejecutar la aplicación Java en el inicio de Windows
Respuesta
La respuesta a this question puede satisfacer sus necesidades. Configure su aplicación Java para que se ejecute como un servicio de Windows y debería estar listo para comenzar.
crear un archivo y poner esto en el interior:
javaw -Xmx200m -jar C:\Path\to\jarfile\TheJar.jar
a continuación, poner el archivo .bat en la carpeta de inicio de Windows.
One more thing: There's a difference between using java and javaw. While java is better when you are debugging an application, the application prints text or something like that, javaw is better when you don't need that. Why? Because java runs java program using a console that shows all that application prints (println's, exception stacktraces and so on) while javaw doesn't run on console.
Uso "winsw" - http://kenai.com/projects/winsw - que fue escrito para GlassFish v3, pero funciona bien con programas Java en general.
Requiere .NET runtime installed.
es simple como usted tiene que poner atajo en
Windows 7 C:\users\All Users\Start Menu\Programs\Startup
(Admin) o User home directory(%userProfile%)
Windows 10: En Ejecutar shell:startup
en su propiedad -> atajo -> objetivo ->java.exe -jar D:\..\runJar.jar
NOTA: Esto sólo se ejecutará después de iniciar sesión
Con administración Derecho
sc create serviceName binpath= "java.exe -jar D:\..\runJar.jar"
Creará servicio de Windows
si obtiene tiempo de espera uso cmd /c D:\JAVA7~1\jdk1.7.0_51\bin\java.exe -jar d:\jenkins\jenkins.war
pero incluso con este obtendrá tiempo de espera, pero en el fondo se iniciará java.exe. Llegada administrador de tareas
En algunos entorno restringido ya que estaba en el ambiente corporativo
ERROR:
The service did not respond to the start or control request in a timely fashion
En este caso
cmd /c D:\JAVA7~1\jdk1.7.0_51\bin\java.exe -jar d:\jenkins\jenkins.war
Esto le dará un error si ejecuta manualmente pero se ejecutará en segundo plano.
NOTA: Esto ejecutará en las ventanas de inicio de sesión de puesta en marcha (antes del inicio de sesión, basado en el servicio 'Startup Type
')
Detailed explanation of creating windows service
Regedit
Nota: Editar usuario avanzado solo
Para ejecutar para el usuario actual Sólo
HKEY_CURRENT_USER/SOFTWARE/MICROSOFT/WINDOWS/CURRENT_VERSION/RUN
funcionar para todos los usuarios
hkey_local_machine/SOFTWARE/MICROSOFT/WINDOWS/CURRENT_VERSION/RUN
crear una cadena con el nombre y la ruta utilizando comando anterior
Jaja ... fácil ! desde ejecución (puede presionar start + r) escribir regedit luego: HKey máquina local-> software-> microsoft-> windows-> versión actual -> ejecutar hacer clic en él y en el otro panel escribir clic en nada y elegir add -> valor de cadena nombre que java doble clic en él y poner su valor como sigue: 'javaw -Xmx200m-jar C: \ ruta \ a \ jarfile \ TheJar.jar' la esperanza de que pudiera ayudarte^_^
con el fin de crear el servicio de cualquier uso ejecutable srvany.exe
de Windows Resource Kits 2003 (tome atención a espacios después =
) ::
cmd> sc create NAME binPath= "c:\Program Files\Windows Resource Kits\Tools\srvany.exe"^
type= own start= auto error= normal DisplayName= "NAME for services.msc"
A continuación, pasar lo srvany.exe
envoltorio hará:
cmd> reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\NAME\Parameters"^
/v "Application"^
/d "\"c:\Program Files\Java\jre7\bin\java.exe\" -cp c:\home\devel\service Main"
Arriba se ve citando sintaxis de espacios. Junto con el servicio de inicio:
cmd> sc start NAME
Si comete el error vuelva a comprobar los ajustes con:
cmd> reg query "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\NAME" /s
y retire del servicio:
cmd> sc delete NAME
y hacer pasos de nuevo.
Visita GUI services.msc
y compruebe con procexp.exe
el servicio realmente comienza.
Consulte también: creating a service with sc.exe; how to pass in context parameters
NOTA Todos los instrumentos involucrados es oficial de Microsoft !!!
Si no está listo para hacer la configuración usted mismo o si desea la misma funcionalidad en computadoras multile, entonces puede usar Advanced Installer. Puede empaquetar frascos para instalar en Windows y establecer parámetros que ejecutarán su programa al iniciar
Si desea hacerlo mediante programación desde Java, puede escribir directamente en la carpeta de inicio del registro de Windows.
Here es el enlace de cómo escribir en el registro de Windows mediante programación.
cuando haya función para trabajar con el registro de lo que necesita es simplemente ejecutar este código
String value = "\"javaw -jar " + System.getProperty("user.dir") + "\\myJar.jar\"";
WinRegistry.writeStringValue(WinRegistry.HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", "myJar autorun key", value);
donde el valor de necesidad clave para ser comando lo ejecuta la aplicación java-jar como myJar.jar
implementadopara sacarlo de ejecución automática simplemente
WinRegistry.deleteValue(WinRegistry.HKEY_CURRENT_USER, "Software\\Microsoft\\Windows\\CurrentVersion\\Run", "myJar autorun key");
ACTUALIZACIÓN
Replace WinRegistry.writeStringValue with WinRegistry.setStringValue recent version of java 1.8.x
- 1. Ejecutar la aplicación en el inicio
- 2. ¿Cómo ejecutar la aplicación Java al inicio del sistema en Windows/Linux/MacOS?
- 3. Windows: Inicio lento de la aplicación
- 4. Aplicación Run C# en Windows Inicio
- 5. Windows Forms: crea la aplicación principal después del inicio de sesión, ¿qué formulario ejecutar?
- 6. Aplicación de Windows C# Evento: CLR20r3 en el inicio de la aplicación
- 7. Ventana de inicio en el inicio de Windows
- 8. Ejecutar una aplicación WPF en Windows XP
- 9. Convierta la aplicación Java en el salvapantallas de Windows
- 10. Programación de agregar la aplicación Java al inicio
- 11. Tomcat Java Servlet - Clase Initialize en la Aplicación de inicio
- 12. Ejecutar la aplicación Java como servicio
- 13. Ejecutar una aplicación J2EE/Grails como aplicación de escritorio de Windows
- 14. Aplicación de GNOME/Vala para ejecutar en Windows
- 15. Cómo ejecutar la aplicación Java mediante el archivo .bat
- 16. ¿Cómo puede un servicio de Windows ejecutar una aplicación GUI?
- 17. Ejecutar una aplicación web java en IIS
- 18. Evitar el inicio de la aplicación Java EE en WebSphere en la excepción
- 19. ¿El mejor método para ejecutar una aplicación Java como un * nix Daemon o servicio de Windows?
- 20. Ejecutar Java EE aplicación en EC2
- 21. ¿Dónde insertar el código para el inicio de la aplicación?
- 22. Ejecutar la aplicación de la consola Java como daemon (fondo)
- 23. Inicio automático para la aplicación de escritorio java?
- 24. Error de Eclipse en el inicio en Windows 7
- 25. ¿Cómo usar el inicio de sesión de Windows para el inicio de sesión único y para las entradas de Active Directory para la aplicación Desktop Java?
- 26. Cómo ejecutar la aplicación Java antigua simple en Android
- 27. ejecutar la aplicación de línea de comando interactiva desde java
- 28. Tela inicio de sesión automático en Windows
- 29. ¿Cómo ejecutar la aplicación de la guerra?
- 30. Ejecutar jar externo a través de la aplicación Java
Esto sólo ocurre cuando el usuario inicie sesión. –
toda otra forma de mantenerlo dentro de la puesta en marcha carpeta –
@ ThorbjørnRavnAndersen Cuándo sería acaecer lo contrario? –