abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

    dnes 04:44 | Pozvánky

    O víkendu probíhá na FIT VUT v Brně konference OpenAlt 2026 o otevřeném softwaru a datech, IT bezpečnosti, DIY a IoT. Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma. Přednášky lze sledovat i online na VHSky a YouTube.

    Ladislav Hagara | Komentářů: 0
    dnes 02:11 | IT novinky

    Qualcomm uzavřel víceletou dohodu se SpaceX. Bude dodávat rádiové technologie, baseband jednotky a software pro plánovanou pozemní 5G síť Starlink Mobile. Výstavba má zahrnovat desítky tisíc základnových stanic v USA. Zahájení nasazování se očekává v roce 2027. Qualcomm dohodu označuje za svůj dosud největší 5G kontrakt.

    vencour | Komentářů: 0
    dnes 02:00 | IT novinky

    Google rozšířil Cloud Vulnerability Reward Program. Nově nabízí odměnu až 250 tisíc dolarů za vysoce závažné architektonické bezpečnostní chyby označované jako Root-in-Cloud.

    vencour | Komentářů: 0
    včera 12:22 | IT novinky

    V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 0
    včera 04:55 | Nová verze

    Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.

    Ladislav Hagara | Komentářů: 3
    včera 03:22 | Nová verze

    Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    5.11. 19:53 | Bezpečnostní upozornění
    V Xenu objevena zranitelnost. Chyba v mechanismu grant copy umožňuje škodlivému virtuálnímu stroji číst a přepisovat libovolnou paměť jiných VM včetně privilegované domény Dom0. Dotčené verze jsou Xen 4.6 a novější. V upstreamu jsou dostupné patche pro Xen 4.17 až 4.19 a vývojovou větev. Pro starší nepodporované verze 4.6–4.16 nejsou v XSA-523 přiloženy opravy.
    vencour | Komentářů: 1
    5.11. 16:55 | Nová verze

    Multimediální přehrávač mpv byl vydán ve verzi 0.42.0. Jde o větší balík změn po bezmála roce. Mimo jiné se lépe integruje s Waylandem nebo rozšiřuje podporu DVD/Blu-ray, např. umožňuje přehrávat rovnou obrazy médií (soubory iso).

    ʚĭɞ 🍉 | Komentářů: 0
    5.11. 12:22 | Nová verze

    Desktopové prostředí LXQt (Lightweight Qt Desktop Environment, Wikipedie) vzniklé sloučením projektů Razor-qt a LXDE bylo vydáno ve verzi 2.5.0. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    5.11. 12:11 | Nová verze

    Byla vydána (𝕏) nová verze 8.0 LTS open source monitorovacího systému Zabbix (Wikipedie). Přehled novinek v oznámení na webu, v poznámkách k vydání a v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (9%)
     (7%)
     (4%)
     (21%)
     (30%)
     (9%)
     (5%)
     (2%)
     (14%)
     (20%)
    Celkem 2992 hlasů
     Komentářů: 35, poslední včera 23:27
    Rozcestník

    Dotaz: Java classpath kompilace

    30.12.2015 20:38 Xerces
    Java classpath kompilace
    Přečteno: 820×
    Ahoj, měl bych dotaz ohledně classpath v programovacím jazyku Java na místní Javatary. Předem se omlouvám za možná nepřesnou terminologii. Mám .jar soubor, který obsahuje nějakou třídu a tato třída využívá milion šest knihoven (jak už to tak s Javou bývá). Tyto knihovny jsou v různých adresářích a při spouštění je tedy nutné zadat classpath k těmto knihovnám a je to teda slušný počteníčko. Nešlo by nějak tuto classpath zakompilovat přímo do toho jar souboru, aby se to nemuselo zadávat při spuštění? Nechci jít cestou kompilace všech knihoven do jar souboru. Potřebuju mít uvnitř pouze tu classpath.

    Řešení dotazu:


    Odpovědi

    30.12.2015 21:33 rastos | skóre: 63 | blog: rastos
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    • commandline s celou classpath napíš do skriptu (alebo shell funkcie) a používaj to
    • .jar okrem .class súborov môže obsahovať aj iné veci (napr. v manifeste) a preto zlúčenie viacerých .jar súborov do jedného (tak, že všetky .jar rozbalíš do jednej adresárovej štruktúry a z nej urobíš výsledný .jar) môže byť problematické
    • raz som sa hral s Eclipsom a ten pri exporte projektu do spustiteľného .jar súboru ponúkol použitie "jar in jar". To znamená, že tie knižničné .jar súbory sa vložili dovnútra .jar-u aplikácie a pribalila sa tam ešte nejaká malá vec, ktorá zariadila, že ich classloader našiel
    30.12.2015 22:42 Xerces
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Tu možnost se skriptem bohužel nemám. Ono se to nepouští z konzole, ale z nějaké jiné Java aplikace, kam lze vložit pouze jar soubor a vedle dopsat tu classpath. Pouští si to pak nějak interně. Přiznám se, že tomu moc nerozumím. Je tam jen kolonka pro zadání jar souboru a druhá pro případný řetězec classpath. Jediný co můžu ovlivnit je ten jar soubor, který tomu podstrkávám. Sloučení knihoven do .jar souboru bych se rád vyhnul, mělo by to pak stovky megabajtů (přitom ta utilita de facto jen kopíruje soubor :-)). Ale je možný, že to prostě nejde, i když se zdráhám uvěřit, že by všici co programují v Javě byly takový masochisti vyžívající se v psaní a modifikacích classpath. Zvlášť ve Windows to musí být chuťovka. :-/
    30.12.2015 23:44 OldFrog {Ondra Nemecek} | skóre: 37 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Pokud je to takto, tak musíte tu classpath skutečně vypsat. O lepším řešením nevím.

    Na vygenerování cesty si můžete napsat skript, já používám například skript, který mi vygeneruje cestu pro všechny jar v adresáři.

    Pro spouštění reálných aplikací se používají taky buď skripty anebo jiné mechanismy, například java web start anebo loader, který si sám natáhne potřebné jarka.

    -- OldFrog
    31.12.2015 11:03 Xerces
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Díky za reakci, půjdu cestou toho MANIFEST souboru. Ono mi nešlo ani tak o generování. Spíše jde o případy, kdy ta classpath je tak nečekaně velká, že ji pak třeba začně něco ořezávat, nebo v případě kontroly, když se dohledává, proč to nefunguje. Pak se tím člověk musí pročítat jak Marxovým Kapitálem, protože většinou po ruce má jenom vzdálenou konzoli s Notepadem :-)
    xkucf03 avatar 31.12.2015 00:18 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    31.12.2015 10:57 Xerces
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    To bude přesně ono. Tak nějak se mi nechtělo věřit, že by to v tak úžasném jazyce nešlo. Snad to bude fungovat. Prosím označit vlákno jako solved. Děkuji.
    31.12.2015 17:41 OldFrog {Ondra Nemecek} | skóre: 37 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Člověk se stále učí, netušil jsem, že to jde tak jednoduše, díky za info :-)
    -- OldFrog
    31.12.2015 22:13 Xerces
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    No ono to tak jednoduché není. Ten MANIFEST je pěkná prasečina, Namátkou nutnost zarovnání na 70 + 2 znaků, problém s mezerami v názvech adresářů. Ale vypadá to, že to nakonec zlomím. :-)
    xkucf03 avatar 31.12.2015 22:30 xkucf03 | skóre: 50 | blog: xkucf03
    Rozbalit Rozbalit vše Re: Java classpath kompilace

    Taky se nečeká, že to budeš psát ručně – mě by to řešit Ant, Maven nebo IDE či jiný nástroj.

    Mám rád, když se lidé přou, znamená to, že vědí, co dělají, a že mají směr. Frantovo.cz, SQL-DK, Relational pipes
    4.1.2016 10:42 Xerces
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Napsal a zalámal jsem to radši ručně (57 řádek). Nechtěl jsem ještě řešit/hledat případný chyby v Ant, nehledě na to, že to ani nemám nainstalovaný. Každopádně to skutečně zafungovalo. Pro pobavení resp. nas... posílám odkaz na krátkou diskuzi k tématu, aneb jak by to němelo vypadat, když se někdo na něco zeptá. :-) https://community.oracle.com/thread/2051019?start=0&tstart=0
    4.1.2016 15:56 OldFrog {Ondra Nemecek} | skóre: 37 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    No ale nedivte se - distribuovat jar s classpath odkazujícím někam do Program files je trochu špinavá praktika. Možná kdybyste na začátku uvedl, že to potřebujete pro vlastní potřebu ve speciélním případě a že víte, že to je hack, pak byste si možná ušetřil zbytečné reakce.
    -- OldFrog
    5.1.2016 12:02 Xerces
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    To jsem nepsal já. Narazil jsem na tu diskuzi náhodou, když jsem hledal řešení svého problému. Mě na tom zarazila ta arogance s kterou ten expert sveřepě tvrdil, že to není potřeba :-) Vůbec si neuvědomil, že ten tazatel mohl být v situaci, kdy nic nevyyvíjí, ale pouze má za úkol rozjet existující aplikaci v nějakém obskurním prostředí. Ty poznámky o multiplatformním programování pak působí dost úsměvně. Každopádně obdivuju ten stoický klid tazatele.
    5.1.2016 18:04 OldFrog {Ondra Nemecek} | skóre: 37 | blog: Žabákův notes | Praha
    Rozbalit Rozbalit vše Re: Java classpath kompilace
    Aha, tak to pardon :-) Mě ta diskuze nepřijde tak hrozná, trochu se to tam zacyklilo, ale v zásadě mají oba pravdu a na konci diskuze je řešení, takže co víc chtít...
    -- OldFrog

    Založit nové vlákno • Nahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.