Un efecto secundario interesante de esto causa un problema al iniciar archivos jar ejecutables en el símbolo del sistema.
Si lo intentas (en un símbolo del sistema):
jarfile.jar parameter
No hay alegría, porque esto se está traduciendo a lo siguiente (que no funciona):
javaw.exe -jar jarfile.jar parameter
Sin embargo, el siguiente comando funciona:
java.exe -jar jarfile.jar parameter
Si cambia la asociación en el administrador de archivos como se describe anteriormente a:
"C:\Program Files\Java\j2re1.4.2_04\bin\java.exe" -jar "%1" %*
Entonces puedes escribir:
jarfile.jar parameter
en el símbolo del sistema y ahora funcionará!
EDITAR: (Sin embargo, aparece una ventana de consola negra cuando ejecuta una aplicación Java basada en formularios (que no es de consola), por lo que esta no es una solución ideal)
Si ejecuta estos archivos jar haciendo doble clic en ellos en Windows, no se pasarán parámetros, por lo que su código Java debe manejar la excepción de desbordamiento de pila e incluir una función de "presionar una tecla" al final o la ventana simplemente desaparecerá.
Para pasar un parámetro en Windows, debe crear un acceso directo al archivo jar, que incluye el parámetro en la línea de destino (haga clic con el botón derecho en el acceso directo y seleccione propiedades), no puede agregar parámetros al icono del archivo jar en este camino.
No hay una solución única y consistente aquí, pero tendría el mismo problema con cualquier otra aplicación de consola.
Hay una aplicación gratuita de Windows llamada "bat to exe" que puede usar para crear un archivo exe a partir de un archivo .bat con la línea de comando adecuada. También puede incrustar el archivo jar en el exe con esta aplicación y hacer que lo limpie cuando haya terminado de ejecutarse, por lo que esta puede ser una solución más elegante.