Ejecutar aplicaciones .jar en Ubuntu Linux
Estos días han sido dos personas en el instituto que, prácticamente en menos de una semana, me han consultado el mismo problema.
Tenían ficheros .jar (si consultas la web FilExt descubrirás que se tratan de paquetes del lenguaje de programación Java) y cada vez que hacían doble click sobre ellos se les abría el gestor de ficheros comprimidos (en su caso File Roller).
Como soy de los que prefieren no tener que explicar n-cientas veces el mismo tema (para poder dedicarme a cosas más productivas) he optado por crear este artículo al que poder “referenciar” a la próxima persona que me lo pregunte (y os puedeo asegurar que lo harán más pronto que tarde)
Un poco de teoría
A los que estamos acostumbrados a ejecutar (y desarrollar) aplicaciones en Java, nos parece de lo más normal hacerlo desde la terminal lanzando un
java -jar mi-paquete-a-ejecutar.jar
Pero claro: no todos programan en Java
Vamos a la práctica
Para conseguir que un fichero .jar funcione en Ubuntu deben cumplirse dos requisitos
- Tener instalada la máquina virtual de java
- Definir el programa a utilizar para abrir los ficheros .jar
Instalar la máquina virtual de Java
Tan sencillo como buscarla en Synaptic.
Comentar que existen dos versiones
- El JRE o Java Runtime Enviroment que no es más que el conjunto de aplicaciones y librerías necesarias para poder usar una aplicación Java (prácticamente la máquina virtual y algunas herramientas más)
- El JDK o Java Development Kit que está formado por el JRE mencionado en el punto anterior y todo lo necesario para poder desarrollar aplicaciones en este lenguaje de programación.
Evidentemente para lo que necesitan mis compañero nada mejor que buscar el JRE en el gestor de paquetes e instalarlo

Definir el programa para abrir programas Java
Basta con hacer click con el botón derecho sobre un fichero .jar y seleccionar la opción que aparece en la imagen

En el formulario que nos aparece a continuación escribiremos
java -jar
tal y como puede observarse en la figura

NOTA: tras el -jar es aconsejable dejar un espacio en blanco para evitar problemas
Conclusión
Problema fácil de solucionar una vez que se sabe cómo hacerlo.
Aunque lo tengo documentado y pienso usarlo (ésto es una amenaza en todo regla) cuando alguien vuelva a preguntarme sobre el tema… ¿qué os jugáis que al final no lo leen y tengo que explicarlo una y otra vez?
Si ya decía un buen amigo que cada vez que le preguntaban algo tenía la “mala” costumbre de indicar la bibliografía adecuada a la consulta que le hacían. Un buen día alguien le saltó: “quillo Teo… ¡qué cada vez que te pregunto algo me sueltas un libro!”
Por desgracia la gente no quiere leer (ni aunque le haga falta), prefiere que le den las cosas “mascaditas” y no tener que molestarse mucho, ¿por eso tendrá tanto “éxito” el “ventanuco”? (y me estoy refiriendo tanto a la desidia del personal como a la poca inquietud por aprender, descubrir y aprender cosas nuevas)


















“(y me estoy refiriendo tanto a la desidia del personal como a la poca inquietud por aprender, descubrir y aprender cosas nuevas)”
Esto es tristemente aplicable a todos los niveles, no solo a la informática…
Estoy segura que los que como comenzamos a usar Linux te lo agradecemos, pero yo, que tengo dos días de haberlo instalado en mi PC no se a que te refieres con “Synaptic” no se si es un directorio, una utilidad o una página en internet. Así que luego de leer el articulo me quedó muy claro que hay que tener la maquina virtual de java para correr paquetes .jar, pero sigo sin tener idea de como instalar la maquina virtual de java.
Pues Synaptic es el gestor de paquetes de Debian/Ubuntu y derivados de ellos. Es el programa con el que podrás instalar los paquetes aunque yo prefiero la terminal, es más rápido.
Un saludo
Tienes razón @Ángela, llevo tanto tiempo hablando de Synpatic que olvidé comentar cómo instalarlo (lo coloque como requisito previo simple y llanamente).
Puedes encontrarlo en Aplicaciones > Sistema > Gestor de paquetes Synaptic y en el botón buscar puedes colocar jre o jdk
Espero te sea de utilidad, para cualquier duda ya sabes dónde encontrarnos.
Gracias y perdona que haya supuesto más de la cuenta
Para aprender algo hay que esforzarse un poco.
Acaso ya no recordáis cuando no teníais ni idea de windows y no sabíais instalar un programa?
Muchos de vosotros de bien seguro que os preocupasteis de leer alguna guía de windows. Pues bien, estoy convencido que si tuvieseis que empezar otra vez des de cero con un sistema como ubuntu que lo trae todo bien masticadito os costaría menos de la mitad sacar provecho a un ordenador.
Además os recuerdo que en el caso de ubuntu en el menú aplicaciones hay una añadir/quitar programas desde dónde todavía es mas fácil instalar este tipo de software.
Así que amigo jasvazquez no pidas disculpas porque hayas supuesto demasiado, el que quiera saber que es synaptic solo debe de escribirlo en google. A ver si resultará que has supuesto demasiado por pretender que la gente sabe como encender el ordenador o como ir hasta un menú con el ratón.
Muchas Gracias!
Alguien tiene idea como puedo crear un lanzador de una aplicación .jar en el menu. Para no tener que estar yendo cada vez que quiero ejecutar el programa a buscarlo en su respectiva carpeta, o estar ejecutando un lanzador del escritorio… odio tener iconos en el escritorio jajaja… Otra cosa, si quisiera lanzar un programa que usa modo gráfico del JavaRuntime, desde consola, como sería el comando. Probé con #java -jar elprograma.jar y me dice: Wrong Java Version! elprograma needs at least Java 1.5 or higher!
PD: elprograma es JDownloader, les va a resultar útil a quienes bajan cosas de megaupload y rapidshare.
Gracias … totales!
La instrucción que indicas para ejecutar es correcta aunque te recomiendo que indiques la ruta al fichero si quieres evitar tener que moverte a la carpeta en la que se encuentra el fichero .jar.
Siguiendo tu ejemplo sería java -jar /ruta/al/fichero/elprograma.jar
El error que comentas se debe a que tienes instalado Java pero en una versión antigua (actualiza mínimo a java 1.5 desde Synaptic)
Suerte
Creo que tengo todos los paquetes bien… acá mando una imagen, mostrando el error que me da en consola, y los paquetes que tengo en el Sypnatic.
Link: http://img6.imageshack.us/my.php?image=javacv5.jpg
Todo parece ser (aparentenmente) correcto.
Comprueba que la versión de java es correcta ejecutando un
desde la terminal.
Muy buena explicación
otra forma de asociar el archivo es dándole click derecho>propiedades
y en la pestaña “abrir con” seleccionar “Sun Java 6 Runtime”
Gracias por el aporte (usando XFCE como entorno de ventanas no me atrevía a “improvisarlo”
)
A mi poniendo el javaruntimeenvironment no me funcionaba, pero por consola si que ha funcionado. Ya estaba empezando a volverme loco.
Muchas gracias.
Viendo la solución he vuelto a la consola y he escrito java y sale esto:
sergio@sergio-desktop:~/Escritorio/JDownloader$ java
Usage: java [-options] class [args...]
(to execute a class)
or java [-options] -jar jarfile [args...]
(to execute a jar file)
La respuesta estaba delante de mis narices y no la veia,…en fin….gracias de todas formas por el aporte…
Hola.
Quiero instalar un programa (concretamente el MSC Adams). En el cd del programa aparecen entre otros ficheros uno llamado setup.jar. He copiado el cd a una carpeta en mi home y he intentado ejecutar el fichero llamado setup.jar, me sale el siguiente mensaje:
Failed to load Main-Class manifest attribute from setup.jar
He visto algunos comentarios en otros foros, pero no se como solucionarlo.
Muchas gracias.
Saludos.
Puede deberse a dos motivos básicamente:
1. Que no tengas la versión adecuada de Java para ejecutar el programa (te recomendaría que actualizases a la última versión del JRE)
2. Que el deployment de setup.jar no sea correcto y por eso te de el error que mencionas.
Personalmente me decanto por el primer motivo… ya nos contarás.
Un saludo
@Adolfo. Por si aún no lo has solucionado: como root escribes en la terminal “update-alternatives –config java” (sin las comillas) y seleccionas la opción que ponga “java-6-sun”.
Saludos
Esta respuesta me funciono!.. configurandolo!.. gracias!
Hola estuve viendo un poco este tema de ejecutar .jar en linux.Como soy un poco fatiga y no tenia ganas de andar escribiendo en consola cada vez q quería ejecutar un .jar. Encontré la forma de ejecutar directamente con un click derecho sobre el archivo y elegir ejecutar con java y la quiero compartir con uds.
La cuestión es asociar esa extensión al binario de java con la opción -jar. Esto sería así:
Le damos click derecho propiedades al archivo a ejecutar, vamos a editar tipo de archivo y en el cuadro “Orden de preferencias de archivo” le damos añadir. Aquí vamos a buscar la ruta de java, que en mi caso está en /usr/bin/java, le damos aceptar y ahora editamos la asociación, nos vamos a la pestaña aplicación y en el
cuadro de texto “Orden” le agregamos el modificador -jar (nos quedaría /usr/bin/java -jar). Listo! damos aceptar y nuestro archivo quedo asociado a java. Ahora cada vez que queramos ejecutar un .jar le vamos a dar click derecho e iremos a la opción ejecutar con java. Esto lo hice con Kubuntu 9.04 ya que no viene como en Kubuntu 8.04 que me lo asociaba automáticamente. Saludos! espero que les sea útil!
Gracias @Matiuhart por tu contribución.
Si observas el artículo verás que lo que propones es exactamente lo mismo que aparece en el texto.
La única excepción es que no he indicado que a partir de seguir los pasos indicados cada vez que hagas doble-click sobre cualquier .jar (no haría falta pulsar el botón derecho como indicas en el comentario) ejecutará directamente java -jar
Suerte y gracias de nuevo
excelente …. el problema es que aun asi … no me corre jejeje ,….. me tocara seguir buscando . buen aporte -
@Angel, prueba a lanzar un java -jar MIFICHERO.jar desde la terminal y nos cuentas cuál es el error que devuelve el sistema.
A partir de ahí podríamos localizar/solucionar la causa del problema.
Suerte
gracias por esta pagina he resuelto, la instalacion del outlookmessenger para ubuntu.nos vemos
Hola mil gracias por exponer tus conocimientos, me estaba rompiendo el coco para instalar una aplicación, pero gracias a tu explicación lo he hecho de maravillas
Genial! Me alegra que haya servido para resolver el problema.
pura vida bicho….. Viva Costa Rica y Ubuntu, Windows es un mier….
Yo digo que soy una especie de “novato avanzado” en Ubuntu… y gracias a este artículo se para que sirve la opción de “Usar una orden personalizada:” (jamás la había utilizado). Muchas gracias.
Siempre hay una vez @Ziccozzis
Me ha gustado la definición de “novato avanzado” jeje
Muchas gracias pensé que estaría condenado a la ejecución por consola. Saludos.
Muy buen tuto… bastante sencillo ejecutar desde la terminal.
Gracias y saludos!
Buenas, me he instalado JDK desde la web de Java.com en mi equipo con Ubuntu 9.04.
Tengo instalado correctamente el JDK, definido en el PATH, ademas he configurado NetBeans que lo uso para programar, Firefox me reconoce Java, etc…
Pero:
Ya no tengo en “Aplicaciones/Internet”
el icono de Java…
y en “Sistema/Administracion” la opcion de Java policy tool.. o algo asi, ademas de que Nautilus, me abre los .jar con e descompresor, si busco la aplicacion de Java no aparece en el listado.
Sabeis como puedo solucionar eso?
Os dejo las salidas del terminal:
$ java -version
java version “1.6.0_20″
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Client VM (build 16.3-b01, mixed mode, sharing)
$ javac -version
javac 1.6.0_20
$ ls /usr/lib/jvm/
java-1.5.0-gcj-4.3-1.5.0.0 java-gcj jdk1.6.0_20 jre1.6.0_20
Hola @Jose
vayamos “por partes” que dijo Jack el Destripador
1. Parece que tienes instalada la máquina virtual de Java de GNU pues tienes en /usr/lib/jvm las entradas java-1.5.0-gcj-4.3-1.5.0.0 y java-gcj; te recomiendo que no la utilices pues normalmente la gente tiene la oficial de Sun y no son 100% compatibles.
2. ¿has instalado la jdk utilizando Synaptic o por el contrario has utilizado el binario que proporciona Sun en su página web? (eso podría explicar que no aparezcan los iconos en el menú)
3. Asegúrate que estás utilizando la versión correcta de Java utilizando el comando update-alternatives (más información en el enlace)
Suerte y un saludo
Buenas, he instalado el JDK desde el binario de la web de Java.com, tanto en firefox, netbeans, etc.. Me sale que utilizo la 1.6.0_20, pero además de no aparecer los iconos comentados, desde nautilus no me deja abrir los .jar y si lo busco en la lista de ‘abrir con’ tampoco me aparece.
Un saludo y muchas gracias por responder
muchas gracias…………
Muchísimas gracias, aunque yo no he localizado el jre en Synaptic, lo he tenido que descargar desde el Centro de software de Ubuntu buscando el paquete “default-jre”, después de instalarlo, botón derecho sobre el archivo “.jar”, abrir con otra aplicación…, usar comando personalizado “java -jar ” y listo. He repetido todo el proceso por si hay algún novato como yo que no lo ha encontrado en Synaptic y se ha perdido…
Gracias de nuevo.
Un saludo
En Ubuntu 10.04 aparecen, con los repositorios que trae por defecto, tanto default-jre como sun-java6-jre; de todos modos gracias por el aviso pues puede que le sea de utilidad a otros.
Salu2 @Tomás
que facil fue hacerlo con el comando java -jar!, me ahorro mucho!!
muchas gracias
Hola, estoy tratando de ejecutar un archivo .jar y por mas que intento no puedo, eh seguido correctamente los pasos que aqui muestran pero aun y asi no puedo resolver el problema, creo que no hace falta mencionar que soy nuevo en el mundo ubuntero, al intentar correr el archivo dando el segundo clic me aparece esta leyenda:
The file ‘/home/chapa/Escritorio/h/1100Words-V1.3.jar’ is not marked as executable. If this was downloaded or copied from an untrusted source, it may be dangerous to run. For more details, read about the executable bit.
Si pudieran ayudarme ……………
GRACIAS….
Hola @Angel parece que estás tratando de ejecutar directamente el fichero por lo que me inclino a pensar que no has configurado correctamente la gestión de los .jar.
Prueba a seguir los pasos detenidamente pues no deberías tener problemas para abrirlos.
Otro posible problema es que no tengas instalada la máquina virtual de Java.
Si sigues teniendo problemas no dudes en contactar a través del soporte técnico del blog
Suerte y un saludo
Vale loko!!
pos a mi lo ke me gustaria es crear un lanzador para la barra de tareas pero no doy kon la tekla en el komando del mio puse java -jar /home/koskado/Documentos/carpetadeljar/arcivo.jar ke desde konsola si funca pero si lo pongo en l komando de lanzador en modo aplicacion hace nada y en modo aplicacion en consola abre y cierrra una consola a una veloscidad tal ke kasi no da tiempo a verla ,¿alguien me podria hechar una mano con eso?
muchas gracias de antemanno (“,) kosky
Debería funcionarte sin problemas; le echaré un vistazo cuando tenga un rato y te cuento.
Un saludo @koskado y bienvenido al blog
El tutorial esta bien pero creo que es mejor por consola ya que en algunas maquins podriaa presentar dificultades como que el .jar sea bloqueado.
¿.jar bloqueado?
¿a qué te refieres exactamente?
un saludo
Olá!
Ya hice todo el proceso, pero ahora no se como iniciar el programa.
Explico, me baje el ultramixer de la pagina oficial, segui todo este proceso para instalarlo, se instaló, pero ahora no se como hacer para abrirlo.
Si alguien me ayada se lo agradeceria mucho
@Guilherme, este proceso no es para instalar ningún programa Java sino para que cuando hagas doble click sobre un fichero .jar se abra sin problemas.
Buen día
tengo una espina con respecto a este tema, es un poco mas de detalle pero posiblemente alguien que tenga experiencia en linux podría resolverla.
ya tengo instalado el jre1.6.0_24 , funciona todo bien, desarrolle una aplicación que se ejecuta en entorno gráfico y tiene interacción con archivos .txt el punto es:
me logeo como usuario root, por lo tanto tengo todos los permisos, pero si esa aplicación.jar la ejecuto desde un entorno grafico NO LEE ARCHIVOS TXT. Pero si la ejecuto desde terminal java -jar aplicacion.jar .. funciona correctamente, lee archivos de manera normal.
ya vi la parte de los permisos tanto de la aplicación como para los archivos y todo esta en orden (read & write), no se que pueda ser.
saludos, gracias
Si te parece lo tratamos a través del soporte técnico pues la temática no está relacionada con el artículo principal.
Un saludo
muchas gracias
quisiera saber si sabes como instalar jmf
Con JMF no he trabajado pues suelo dedicarme al entorno web con alta demanda de usuarios; sin embargo en Internet existe algún que otro artículo sobre el tema.
Suerte
Muchas gracias amigo, que buena explicacion.
es muy buena thank you
Gracias
Gracias!!!
Wow, desde el 2009 hasta ahora respondiendo preguntas del mismo post, qué máquina Informático de Guardia. Son 3 años ya ehh!
Me despido pero no antes sin agradecerte este aporte sencillo pero muy muy muy útil. Un saludo y felicidades por este blog
Mucha suerte y sigue así
Gracias Álvaro por comentar y por los buenos deseos
Un placer poder seguir contestando (cuantos más mejor) comentarios y aportando, por muy pequeño que sea, mi granito de arena al desierto del Software Libre
Good!!
Gracias Amigo, fue de gran ayuda tu post….
Me alegra saberlo Oscar, gracias por comentarlo
Gracias por la informacion
Me alegra que te sea de utilidad
Muchas gracias amigo, me salvaste e aprendido un monto gracias a vos.. saludos desde Tucuman – Arg
Me alegra haber sido de utilidad. Para lo que necesites ya sabes dónde encontrarme.
Salu2 desde Andalucía (España)
te amo te amo te amoooo ya quería jugar yo minecraft
No sabes lo que me alegra que te haya sido de utilidad; procurar no perder demasiado tiempo jugando cuando tengas “tareas” que me sentiré culpable