Tema destacado: Deseas probar algunas mejoras a la interfaz del foro? Prueba cake! acerca de
Autor
|
Tema: Problema imagenes en ubuntu (Leído 1,238 veces)
|
Flashtk
Desconectado
Mensajes: 5
|
Hola Buena estoy teniendo problemas al momento de cargar una imagen en java. Tengo una carpeta la cual contiene la carpeta imágenes(imágenes fuera del jar) y el archivo jar , this.jLabel1.setIcon(new ImageIcon("imagenes/imagen1.jpg")); Este código en Windows funciona perfectamente pero al ejecutar el jar en ubuntu simplemente no me muestra la imagen
|
|
|
|
|
En línea
|
|
|
|
|
H1tchclock
|
¿Qué version de UBUNTU tienes? Yo tengo ubuntu 9.04 instalado y tengo el mismo problema... Pero lo tengo es por que mi ubuntu es antiguo, desactualizado... Sí quires, informate en la comunidad de Ubuntu... Puede tener más información en la guia UBUNTU: http://www.guia-ubuntu.org/index.php?title=Eclipse. Y creo que este post deberia estar en el foro GNU/LINUX.... Allá te van ayudar rapidamente, Saludos desde Bolivia.
|
|
|
|
|
En línea
|
Mi inteligencia es proporcional al tiempo que invierto en internet
|
|
|
|
H1tchclock
|
El enlace anterior estaba equivocado, vaya a este, y postee tu pregunta en el lugar que corresponda, par que sea efectiva la solucion. http://www.guia-ubuntu.org/index.php?title=JavaSaludos desde Bolivia.
|
|
|
|
|
En línea
|
Mi inteligencia es proporcional al tiempo que invierto en internet
|
|
|
Flashtk
Desconectado
Mensajes: 5
|
Tengo Ubuntu 11.10 corriendo en una maquina virtual
|
|
|
|
|
En línea
|
|
|
|
|
|
Flashtk
Desconectado
Mensajes: 5
|
Bueno Gracias , pero no creo que sea problema de ubuntu , mi aplicacion corre y todo solo que no me muestra la imagen
|
|
|
|
|
En línea
|
|
|
|
|
H1tchclock
|
Bueno Gracias , pero no creo que sea problema de ubuntu , mi aplicacion corre y todo solo que no me muestra la imagen
Obviamente amigo, pero allá tendrás alguien que puede haber pasado por el mism problema y/o conozca la solucion, ya que el problema no es con el UBUNTU pero en el UBUNTU (no sé se me explico, jejeje) ¡De todas formas, suerte con la solucion!
|
|
|
|
|
En línea
|
Mi inteligencia es proporcional al tiempo que invierto en internet
|
|
|
|
Proteus1989
|
Creo que es culpa de la ruta relativa. Prueba a usar la ruta absoluta. Si es por la ruta, postealo aquí y te digo como obtener la ruta absoluta independientemente del sistema operativo y la carpeta donde ejecutes el jar
|
|
|
|
|
En línea
|
|
|
|
Didacso
Desconectado
Mensajes: 202
|
Y si haces esto que sucede ??? this.jLabel1.setIcon(new ImageIcon("./imagenes/imagen1.jpg"));
|
|
|
|
|
En línea
|
Nadie alcanza la meta con un solo intento, ni perfecciona la vida con una sola rectificación, ni alcanza altura con un solo vuelo.
|
|
|
|
Leyer
|
LO mejor es que crees un package y guardes las imagenes hay, y asi no tendrias estos problemas
un saludo.
|
|
|
|
|
En línea
|
|
|
|
Flashtk
Desconectado
Mensajes: 5
|
Creo que es culpa de la ruta relativa. Prueba a usar la ruta absoluta. Si es por la ruta, postealo aquí y te digo como obtener la ruta absoluta independientemente del sistema operativo y la carpeta donde ejecutes el jar
¿Podrias dar un ejemplo utilizando la ruta absoluta? Y si haces esto que sucede ??? this.jLabel1.setIcon(new ImageIcon("./imagenes/imagen1.jpg")); lo mismo solo funciona en windows , en ubuntu no se muestran las imagenes LO mejor es que crees un package y guardes las imagenes hay, y asi no tendrias estos problemas
un saludo.
eso es precisamente lo que estoy tratando de evitar , si por ejemplo si agrego una nueva imagen , tendría que desempaquetar , agregar la imagen y nuevamente empaquetar el jar . gracias por sus respuestas
|
|
|
|
|
En línea
|
|
|
|
|
Leyer
|
has probado quitando el acento a la carpeta?
|
|
|
|
|
En línea
|
|
|
|
adastra
Endless Learner
Colaborador
 
Desconectado
Mensajes: 626
http://thehackerway.com/
|
El JAR muy probablemente lo vas a tener que volver a generar, porque el sistema de ficheros en windows es distinto al de Linux (como ya sabes) lo que implica que la JVM tiene "ceñirse" a cada entorno. Te funciona en Windows porque asume que el directorio "/imagenes/imagen1.jpg" se encuentra en el mismo directorio donde se encuentra el JAR, en UBUNTU no te funciona porque asume que existe un directorio "/imagenes/imagen1.jpg" que parte del raiz "/" tendrías que poner la ruta absoluta, por ejemplo: "/home/tu_usuario/imagenes/imagen1.jpg" o "/opt/imagenes/imagen1.jpg" El problema que tienes no es ni de java ni de linux, es conceptual, debes comprender mejor como funciona el sistema operativo que estas empleando (ubuntu) para que la carga de recursos (en este caso, imagenes) te funcione correctamente... Te recomiendo utilizar propiedades del sistema localizadas en el objeto java.lang.System para acceder a variables globales del sistema operativo, tales como "user.home" o "user.dir" http://chuidiang.blogspot.com/2005/09/propiedades-de-systemgetproperty.html
|
|
|
|
|
En línea
|
|
|
|
Flashtk
Desconectado
Mensajes: 5
|
Gracias a todos por sus respuestas Ya pude hacer que se mostraran las imagenes. Cree un archivo script.sh #!/bin/bash #me dirijo a la carpeta donde se encuentra mi aplicacion cd ~/Desktop/dist java -jar prueba.jar Luego cree un lanzador referenciando el script creado y funciono
|
|
|
|
|
En línea
|
|
|
|
|
Proteus1989
|
La solución que yo usé fue esta: public static void main(String[] args) { String recurso = LecturaTxt.class.getSimpleName()+ ".class"; recurso = LecturaTxt.class.getResource(recurso).toString(); StringTokenizer token = new StringTokenizer(recurso,"!"); recurso = token.nextToken(); if(System.getProperty("os.name").toLowerCase().contains("windows")) recurso = recurso.substring(10); else recurso = recurso.substring(9); File x = new File(recurso); x.getParent(); System.out.println(x.getParent()); } En el IDE no te funcionará bien, pero cuando lo pases al jar verás como te devuelve la ruta absoluta del directorio donde se aloja el jar, independientemente del sistema operativo en el que estés
|
|
|
|
|
En línea
|
|
|
|
|
|