studio programacion para móviles libro edición desarrollo desarrollar curso aprende aplicaciones java eclipse resources imagesource

java - para - manual de programacion android pdf



Incrustar recursos(imágenes, bits de sonido, etc.) en un proyecto de Java y luego usar esos recursos (1)

He buscado un método para incrustar un recurso en un proyecto Java (usando Eclipse v3.6.0) y luego usar ese recurso incrustado dentro de un control (por ejemplo, JLabel ). He visto métodos de referencia de recursos del sistema de archivos. Una vez que se haya desarrollado el proyecto, me gustaría publicar la aplicación como ejecutable. Cabe señalar que estos ejecutables se implementarán / lanzarán a plataformas Windows, * NIX y Linux.

Sé que esto se puede hacer en el mundo de Visual Studio, pero no sé muy bien cómo hacerlo en Java / Eclipse IDE. Como una pregunta complementaria, ¿cómo consigo Eclipse para crear el proyecto como un ejecutable para que pueda ser lanzado?

Cualquier ayuda es muy apreciada.

marca

ACTUALIZACIÓN 1:

En base a la respuesta de BalusC , quería compartir el código que tengo para resolver mi problema. Mis clases están bajo el paquete de " Viking.Test " y luego coloqué el archivo de imagen en el paquete " Viking.Test.Resources ". Todo esto se hace dentro de Eclipse para importar la imagen en el proyecto.

  1. Importé la imagen haciendo clic con el botón derecho en Proyecto -> Importar -> General / Sistema de archivos para la fuente de importación.
  2. Seleccionó la carpeta que contenía la imagen para importar
  3. Seleccionado " Project/src/Viking/Test/Resources " para el parámetro ''Into folder''
  4. No cambió ninguna de las opciones y presionó "Finalizado"

En el archivo de origen, agregué el siguiente código para insertar la imagen en un JLabel ( LblLogo )

try { ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); InputStream input = classLoader.getResourceAsStream( "Viking/Test/Resources/MyImage.jpg"); Image logo = ImageIO.read(input); LblLogo = new JLabel( new ImageIcon( logo ) ); LblLogo.setBounds(20, 11, 210, 93); getContentPane().add(LblLogo); } catch ( IOException e ) { }


Simplemente ponga esos recursos en la estructura fuente / paquete y use ClassLoader#getResource() o getResourceAsStream() para obtenerlos como URL o InputStream desde la ruta de clases por la ruta completa del paquete calificado.

ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); InputStream input = classLoader.getResourceAsStream("/image.gif"); // ...

O si está en el mismo paquete que la clase actual, también puede obtenerlo de la siguiente manera:

InputStream input = getClass().getResourceAsStream("image.gif");

Como una pregunta complementaria, ¿cómo puedo obtener Eclipse para crear el proyecto como un ejecutable para que pueda ser lanzado?

Rightclick Java Project> Exportar> Runnable JAR File .