JAVA - Jak tworzyć .jar ? (dwuklik)

0

Witam!
Potrzebuję drobnej pomocy dot. tworzenia plików jar.
Chcę stworzyć plik jar nie korzystając z kompilatorów (samemu stworzyć pliki). Wiem że trzeba dodać folder META-INF, ale nie wiem dokładnie co ma być w środku.Prosiłbym o drobne wytłumaczenie;]

Mój folder :
Main.java jest głównym plikiem

Pulpit ------- >
Model Creator -->
|
|
|
|
|
Main.java
&
GFX(folder z obrazkami)
&
src --->
Skatty---->(folder z plikami .class)

1

Zawatość pliku MANIFEST.MF:

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.6.0_24-b07 (Sun Microsystems Inc.)
Main-Class: nazwa_pakietu1.nazwa_pakietu2.nazwa_klasy_z_metoda_main
Class-Path: nazwa_biblioteki.jar nazwa_pliku.txt nazwa_pliku2.txt

dodatkowe biblioteki i pliki muszą się znaleźć w pliku dist. Trzy pierwsze linijki utworzą Ci się automatycznie. Jeśli wybierze opcje w Netbeans Clean and Build (Shift+F11)

podczas tworzenia za pomocą NetBeansa powstają takie katalogi

META-INF
   MANIFEST.MF
nazwa_pakietu1 
   nazwa_pakietu2 
     nazwa_klasy_z_metoda_main.class
0

Ok ale jakie biblioteki i pliki txt?

Class-Path: nazwa_biblioteki.jar nazwa_pliku.txt nazwa_pliku2.txt

0

jeśli nie używasz dodatkowych bibliotek i nie odczytujesz plików tekstowych to nie pisz tej linijki

0

Zrobiłem tak jak mówiłaś, ale podczas uruchamiania jar wyskakuje invalid or corrupt jarfile ;/

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.8.2
Created-By: 1.6.0_24-b07 (Sun Microsystems Inc.)
Main-Class: src.Skatty.Main

0

wydaje mi się że masz tu źle:

Main-Class: src.Skatty.Main

src - to nazwa pakietu ?

0

Ok już naprawiłem program działa ale nie wczytuje grafik z folderu GFX. Grafiki nawet wyciągłem do folderu z class, a mimo to dalej ich nie wczytuje.
Musze je jakoś zaznaczyć w Manifes'cie?

0

ten katalog GFX powinien się znaleźć w katalogi dist . Należy dodać też linijkę w MANIFEST.MF:

Class-Path: GFX\nazwa_pliku

jak masz ich więcej to dodaj tylko bez przecinków

0

Nie musisz, ale musisz odpowiednio czytać:

new ImageIcon(Main.class.getResource("GFX/Obrazek.gif"));
0

ok dzieki

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