Nazwa pliku JAR

0

witam,

Mam troszkę śmieszne pytanko :)

Zapisuje program do pliku .jar który następnie może być uruchomiony na dowolnym komputerze.

Plik który ja tworzę to program1.jar, jednak jak wiadomo każdy może sobie zmienić nazwę pliku na dowolną no aplikacja_x.jar

Jak można pobrać (w aplikacji) nazwę pliku z jakiego została uruchomiona aplikacja ?

Tak aby np dla pliku program_x.jar zmienna applicationFilename miała wartość "program_x.jar" ?

0

Krotka odpowiedz - nie da sie, nie taka zasada dzialania jarow. Latwo mozesz wyciagnac nazwe klasy ktora jest glowna klasa programu, w obojetnie jakim jarze (lub katalogu, lub zipie, lub stronce www,...) by sie nie znalazla.
Jednak, mozesz sprobowac pobawic sie ze zmienna classpath. Tam sa wszystkie jary ktore "widzi" aplikacja, jesli jest prosta to tych jarow bedzie 1 :>

0

Jeżeli uruchamiasz jara w następujący sposób:
java -jar jakis_jar.jar
to możesz wyświetlić nazwę jara w następujący sposób:

File file= new File(TwojaKlasa.class
				.getProtectionDomain().getCodeSource().getLocation().toURI());
		System.out.println(file.getName());
0

Dobre [soczek]

0

dziękuje.

właśnie coś takiego było mi potrzebne :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1