2009-06-23 8 views

risposta

9

Ho visto questo gestito in un certo numero di modi diversi:

  • Posizionare le risorse direttamente in un sottodirectory com/dmxio/giochi/breakout (ad es /com/dmxio/giochi/breakout /images/foo.gif e /com/dmxio/games/breakout/images/bar.gif)
  • Collocare le risorse in un barattolo insieme con i tuoi file di classe (ad esempio foo.gif e bar.gif in bundle in breakout.jar)
  • Posizionare le risorse in un "vaso di risorse" separato in una sottodirectory in com/dmxio/games/breakout (ad es. foo.gif e bar.gif bundle in /com/dmxio/games/breakout/images/images.jar)

ho tendono a favorire l'ultima opzione.

È quindi possibile utilizzare il metodo java.lang.Class.getResource() per recuperare le risorse.

15

È sempre possibile adottare un approccio standard Maven al progetto e mettere tutti i file di origine dell'applicazione in

{a casa}/src/main/java/com/dmxio/giochi/breakout

e poi si risorse vivono in

{HOME}/src/main/risorse/com/dmxio/giochi/breakout

i test poi vivere in:

{HOME}/src/test/java/com/dmxio/games/breakout

Questa struttura è una convenzione standard per strutturare progetti nel mondo Maven. Porta con sé molti vantaggi, che potresti voler guardare. È possibile controllare la sezione risorse qui:

http://maven.apache.org/guides/getting-started/index.html#How_do_I_add_resources_to_my_JAR

alternativa :) l'altro approccio qui è solo bene ...

+2

+1 Mi favore utilizzare questa convenzione. E semplifica le cose se un giorno vorresti costruire il progetto con Maven. –

+0

Sono d'accordo con Andreas_D - grazie per l'informazione. –

+0

Definitivamente +1 per l'adesione alla convenzione di Maven. È una struttura standard decente, sarà d'aiuto se userai Maven, più altri sviluppatori sapranno immediatamente come navigare in questo modo. – mikera

Problemi correlati