Ho creato un piccolo programma in Java che visualizza la sua origine .java con una GUI. Non usa FileChooser per farlo. Sto leggendo le fonti .java con l'ausilio di seguenti dichiarazioniUtilizzare i file .java del progetto come file di risorse
String resName = "/dev/classes/"+name+".java"
Scanner s = new Scanner(FilePrinter.class.getResourceAsStream(resName));
dove name
è il nome del file .java vale a dire se il file è MyProg.java
allora name==Myprog
. Ovviamente il mio programma è all'interno del pacchetto dev.classes
Il fatto è che quando esporto il mio progetto in JAR e includo i file sorgente questo funziona perché i file di origine risiedono all'interno della directory /dev/classes/
.
Tuttavia, non ho ancora trovato un modo per far funzionare il mio programma in Eclipse o dalla riga di comando senza darmi un'eccezione.
E, naturalmente, quando qualcuno tenta di aggiungere quei file di origine da utilizzare automaticamente come file di risorse, il processo non riesce.
Posso in qualche modo utilizzare lo stesso codice sia quando si esegue da Eclipse e dal JAR? Deve essere qualcosa di molto banale ma perché non sono un esperto di Java che non riesco a vedere.
È solo questione di assicurare la sorgente è all'interno del vaso che Eclipse fa. Se lo è, funzionerà. –
Grazie @ andrew-thompson. L'ho assicurato e funziona all'interno del barattolo, ma non quando è eseguito direttamente da Eclipse. E come puoi capire, non è come un normale file .txt. I file .java non vengono copiati da Eclipse nella directory/bin /! –
* "non è come un normale diciamo il file .txt." * Una fonte Java è solitamente una particolare codifica e l'estensione è diversa, e mentre avrà all'interno il codice 'Java', è molto simile a un testo file su un computer (o software). –