Ejecutar aplicaciones .jar en Ubuntu Linux

nullEstos 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

  1. Tener instalada la máquina virtual de java
  2. 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

  1. 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)
  2. 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)

Etiquetas: , , , , ,

Acerca de Informático de Guardia

Persona inquieta y emprendedora con afición al software libre en general y a Linux en particular.

65 Respuestas a “Ejecutar aplicaciones .jar en Ubuntu Linux”

  1. aziru dice :

    “(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…

  2. Angela dice :

    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.

  3. chipi dice :

    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

  4. jasvazquez dice :

    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 ;)

  5. Guillem dice :

    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.

  6. Rocío dice :

    Muchas Gracias!

  7. Adolfo dice :

    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!

  8. jasvazquez dice :

    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

  9. Adolfo dice :

    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

  10. nuevodasein dice :

    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”

  11. sergio dice :

    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…

    • quique dice :

      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.

      • jasvazquez dice :

        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

  12. flux dice :

    @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 :)

  13. matiuhart dice :

    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!

    • jasvazquez dice :

      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

  14. angel dice :

    excelente …. el problema es que aun asi … no me corre jejeje ,….. me tocara seguir buscando . buen aporte -

    • jasvazquez dice :

      @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

  15. Eddy blens dice :

    gracias por esta pagina he resuelto, la instalacion del outlookmessenger para ubuntu.nos vemos

  16. Ana dice :

    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

  17. pichudo dice :

    pura vida bicho….. Viva Costa Rica y Ubuntu, Windows es un mier….

  18. Ziccozzis dice :

    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.

  19. Ushiro dice :

    Muchas gracias pensé que estaría condenado a la ejecución por consola. Saludos.

  20. Leopoldo Villegas Tapia dice :

    Muy buen tuto… bastante sencillo ejecutar desde la terminal.

    Gracias y saludos!

  21. Jose dice :

    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

    • jasvazquez dice :

      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

      • Jose dice :

        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

  22. javier dice :

    muchas gracias…………

  23. Tomás dice :

    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

  24. roverr dice :

    que facil fue hacerlo con el comando java -jar!, me ahorro mucho!!

    muchas gracias

  25. Angel Chapa dice :

    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….

  26. koskado dice :

    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

  27. aLexx dice :

    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.

  28. Guilherme dice :

    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

  29. Carlos dice :

    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

  30. fernando dice :

    muchas gracias
    quisiera saber si sabes como instalar jmf

  31. Eliezer dice :

    Muchas gracias amigo, que buena explicacion.

  32. carlos dice :

    es muy buena thank you

  33. Merma dice :

    Gracias!!!

  34. Álvaro dice :

    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í ;-)

  35. informaticasigloxxi dice :

    Good!!

  36. Oscar dice :

    Gracias Amigo, fue de gran ayuda tu post….

  37. Jovanny dice :

    Gracias por la informacion :)

  38. Cesar Martin dice :

    Muchas gracias amigo, me salvaste e aprendido un monto gracias a vos.. saludos desde Tucuman – Arg

  39. samuel dice :

    te amo te amo te amoooo ya quería jugar yo minecraft

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Conectando a %s

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

Únete a otros 1.920 seguidores

%d bloggers like this: