Zrobiłem mały program w Javie, który wyświetla jego źródło .java z gui. W tym celu nie korzysta z FileChooser. Czytam źródła .java przy pomocy poniższych stwierdzeńUżyj własnych plików .java projektu jako plików zasobów
String resName = "/dev/classes/"+name+".java"
Scanner s = new Scanner(FilePrinter.class.getResourceAsStream(resName));
gdzie name
jest nazwą pliku .java to znaczy, jeśli plik jest MyProg.java
następnie name==Myprog
. Oczywiście mój program znajduje się wewnątrz pakietu
Chodzi o to, że kiedy eksportuję mój projekt do JAR i dołączam pliki źródłowe, to działa, ponieważ pliki źródłowe znajdują się wewnątrz katalogu /dev/classes/
.
Jednak nie znalazłem jeszcze sposobu, aby mój program działał w Eclipse lub z wiersza poleceń, nie dając mi wyjątku.
Oczywiście, gdy ktoś spróbuje dodać te pliki źródłowe, które będą automatycznie używane jako pliki zasobów, proces się nie powiedzie.
Czy mogę w jakiś sposób użyć tego samego kodu zarówno podczas uruchamiania z Eclipse, jak iz JAR? To musi być coś bardzo trywialnego, ale ponieważ nie jestem ekspertem od Javy, nie widzę.
jest to tylko kwestia zapewnienia źródło jest wewnątrz Eclipse sprawia, że Jar. Jeśli tak, to zadziała. –
Dziękuję @ andrew-thompson. Zapewniłem to i działa wewnątrz słoika, ale nie działa bezpośrednio z Eclipse. I jak możesz zrozumieć, to nie jest tak, jak zwykły, powiedzmy, plik .txt. Pliki .java nie są kopiowane przez Eclipse do katalogu/bin /! –
* "to nie jest tak, jak w zwykłym, powiedzmy, pliku .txt." * Źródło Java jest zwykle określonym kodowaniem, a rozszerzenie jest inne i chociaż ma w sobie kod "Java", to jest bardzo podobne do tekstu plik do komputera (lub oprogramowania). –