Portál AbcLinuxu, 11. května 2025 23:41

Dotaz: Netbeans, Java a lib knihovny

4.8.2009 17:38 Marian Stur
Netbeans, Java a lib knihovny
Přečteno: 1444×
Odpovědět | Admin

Dobry den, kdyz vytvorim projekt v netbeans, ktery pouziva nejakou knihovnu (u mne konkretne getopt) a dam build projektu, tak se mi ve slozce s projektem v adresari dist/ vytvori jar soubor a knihovna (taktez jar) se zkopiruje do podadresare lib.

Pokud chci tedy program dale distribuovat, nestaci vzit pouze jar soubor, ale musim k nemu vzdy "tahat" i cely adresar lib. Neni nejaky zpusob jak Netbeans rict, aby knihovny pribalil rovnou do toho jar souboru?

Nebo to je nejaka konvence mit knihovny mimo jar?

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

4.8.2009 17:45 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Netbeans, Java a lib knihovny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Kliknut na tlacidlo v IDE je sice pohodlne, ale urcite uzitocnejsie je najskor vediet to urobit "rucne" (v tomto pripade cez cisty ANT) a pochopit to, az potom si uzivat pohodlny support vyvojoveho prostredia.

Technicky vzate, zabalit vsetko do jedneho jar-ka mozne je a su projekty, ktore to aj robia (pochybujem, ze by to IDE robilo priamo, ale uprimne: nikdy som sa o to nepokusal). V takom pripade ale uz treba asi zohladnit malickosti licencnej zmluvy ako je definicia odvodeneho diela a pripadne restrikcie, ktore v takom pripade treba uplatnit.
4.8.2009 23:02 ESE | skóre: 9 | Brno
Rozbalit Rozbalit vše Re: Netbeans, Java a lib knihovny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dá se to provést jednoduchou úpravou souboru build.xml (viditelný v rootu projektu na záložce files).

Je potřeba přidat následující strukturu:
<target name="-post-jar">
  <jar update="true" destfile="${dist.jar}">
    <zipfileset src="${file.reference.log4j.jar}"/>
  </jar>
</target>
Kde ${file.reference.log4j.jar} je potřeba nahradit odkazem na příslušnou knihovnu (viz project.properties opět dostupné přes záložku files ve složce nbproject).

Obdobným způsobem lze zahrnout více knihoven či odkazovaných projektů - u těch se místo file.reference používá jen reference.

10.3.2011 19:53 Tom
Rozbalit Rozbalit vše Re: Netbeans, Java a lib knihovny
Kámo ty jsi genius - díky =)
5.8.2009 10:35 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Netbeans, Java a lib knihovny
Odpovědět | | Sbalit | Link | Blokovat | Admin
Můžete použít nějakou úlohu pro Ant, která třídy z těch knihoven přibalí do vašeho jarka. Ale jinak javovské aplikace se se normálně distribuují jako kolekce jarek, tj. hlavní jarko se spustitelnou třídou a vedle adresář lib a v něm (případně podadresářích) závislosti. V manifestu toho hlavního jarka se pak správně nastaví classpath pomocí relativní cesty k tomu hlavnímu jarku, hlavní třída, a to je vše. Aplikace se pak spouští příkazem java -jar hlavni.jar.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.