Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Jak na JAVU? Neumím zkompilovat do JAR

Situace je taková - stáhl jsem si pěkný program circuit.jar, ke kterému dal autor i zdrojové kódy. Potřeboval bych tam něco drobného změnit. V Javě nedělám, tak se v tom plácám. Když to vezmu od konce:
Rozbalil jsem dotyčný program příkazem
jar xf circuit.jar
to mi vytvořilo soubory *.class a ve složce Meta-inf soubor manifest.mf
když to pak zase sloučím příkazem
jar cf circuit.jar *.class
vytvoří to soubor o 14 bajtů menší a nejde spustit.
Co dělám špatně?
V tom manifest souboru je napsáno Created-By: 1.6.0_22 (Apple Inc.)
Já jsem stáhl Javu jdk1.7.0_03 - mohlo by to být jinou verzí?

To nemluvím o tom, jak jsem pracně překládal ty originální .java soubory na výsledný circuit.jar, který také nefunguje, tak jsem to chtěl ověřit rozbalením toho funkčního.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Tak jsem stáhl stejnou verzi jdk1.6.0_22 a zopakoval pokus s rozbalením a sloučním jar souboru, tent… nový
JoDiK 15.02.2012 15:46
JoDiK
a co to pise? Klidne to sem posli jestli to neni velke a podivame se na to. Nemuze to najit Main cla… nový
AZOR 15.02.2012 16:40
AZOR
Jak jsem napsal o kus níže, vůbec nic to nenapíše. Program je odtud: circuit konkrétně tady: circuit… nový
JoDiK 15.02.2012 16:45
JoDiK
Pro úplnost - vše se pokouším provádět ve windows. Jestli jsem správně pochopil o co jde, tak soubor… nový
JoDiK 15.02.2012 16:31
JoDiK
Tak se zdá, že jsem na to možná přišel, jsem už sice doma, takže nemám nainstalováno vše a nemůžu to… nový
JoDiK 15.02.2012 17:16
JoDiK
Tak jsem přecejen pokročil. Když ten výsledný program spustím z příkazového řádku, napíše to: Failed… nový
JoDiK 15.02.2012 17:45
JoDiK
Samozrejme ze musis z cmd, jinak neuvidis vypis chyby (a idealne i spoustet programy odsud). A kdyz… nový
AZOR 15.02.2012 17:49
AZOR
Mám, ale nějak to asi nepobral... Manifest-Version: 1.0 Created-By: 1.6.0_22 (Apple Inc.) Main-Class… nový
JoDiK 15.02.2012 17:57
JoDiK
Tak už to snad funguje... No člověk se pořád učí... nový
JoDiK 15.02.2012 18:02
JoDiK
Díky za nakopnutí... poslední
JoDiK 15.02.2012 18:47
JoDiK

a co to pise? Klidne to sem posli jestli to neni velke a podivame se na to. Nemuze to najit Main classu nebo neco takoveho, ne?

Jak jsem napsal o kus níže, vůbec nic to nenapíše.
Program je odtud:
circuit
konkrétně tady: circuit.zip
Zdrojové kódy zde: src.zip

Je to moc pěkný program na simulaci elektronických obvodů - především umí moc hezky (edukativně) animovaně zobrazovat kudy a kam tečou proudy.
Chtěl bych aspoň nastavit výchozí typ rezistorů na evropské a pokud to půjde, doladit i nějaké další věci - třeba ho přeložit i do češtiny.

Pro úplnost - vše se pokouším provádět ve windows.
Jestli jsem správně pochopil o co jde, tak soubor .jar je jen zkomprimovaný balíček jednotlivých souborů (zkompilovaných .class i případných datových souborů obrázky a tak...) přičemž v souboru manifest.mf jde především o definování "hlavního" souboru - který se pak z toho .jar souboru spouští.
Proč teda nejde ani tak jednoduchá operace jako rozbalení a sbalení souboru?
Když spouštím ten nově sbalený soubor, tak jen zabliká kontrolka disku a nic se nezobrazí...

Tak se zdá, že jsem na to možná přišel, jsem už sice doma, takže nemám nainstalováno vše a nemůžu to tak rychle ověřit, ale právě jsem zkusil ten původní program samostatně a autor zřejmě špatně ošetřil chybějící vstupní soubor - po chvilce nešel spustit ani originální program.
Edit: tak jsem to podstoupil ještě jednou, stáhnul a nainstaloval JDK a bohužel stav trvá.
Když to znovu spojím, program neudělá vůbec nic.

Samozrejme ze musis z cmd, jinak neuvidis vypis chyby (a idealne i spoustet programy odsud). A kdyz to rozbalis mas v manifestu radku s Main-Class?

Mám, ale nějak to asi nepobral...
Manifest-Version: 1.0
Created-By: 1.6.0_22 (Apple Inc.)
Main-Class: Circuit

Zkusil jsem to kompletně zadat z příkazové řádky:
jar cfe circuit.jar Circuit *.class
neboli vstupní bod definovat odtud a zdá se že už to jde...
achjo...
Jdu zkoušet překládat zdrojáky...

Zpět do poradny Odpovědět na původní otázku Nahoru