Iné

Mac Ako upraviť súbor java .jar?

D

dudleybrooks

Pôvodný plagát
4. apríla 2011
San Francisco
  • 14. apríla 2011
Potrebujem urobiť jednoduchú úpravu v aplikácii (Thunderbird.app) -- zmeniť jeden riadok v súbore .jar. Na mojom starom počítači so systémom Windows som vedel, aký softvér mám použiť. Aký je v Snow Leopard najjednoduchší spôsob, ako otvoriť, upraviť a uložiť súbor .jar v aplikácii? Najlepšie pomocou vecí, ktoré sú zabudované v OS; ak nie, tak pomocou freeware?

jiminaus

16. december 2010


Sydney
  • 15. apríla 2011
Súbor .jar je len súbor .zip s inou príponou (a nejakým štandardným/preddefinovaným rozložením). Na zmenu súboru .jar môžete použiť štandardné programy zip a unzip v /usr/bin za predpokladu, že nie je podpísaný.

„Zmena jedného riadku v súbore .jar“ nedáva priamo zmysel v kontexte súboru .jar. Ak nám presne poviete, čo chcete s týmto súborom .jar urobiť, možno vám budeme vedieť povedať, aké nástroje/programy Mac OS X môžete použiť a ako. M

muflón

15. september 2006
  • 15. apríla 2011
Bezdrôtovo zverejnené (Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_2_1 ako Mac OS X; sv-se) AppleWebKit/533.17.9 (KHTML, ako Gecko) Verzia/5.0.2 Mobile/8C148 Safari/6533.18.5)

V skutočnosti existujú tri fázy: extrakcia, úprava a zostavenie späť dohromady.

Extrahovanie je jednoduché: kliknite pravým tlačidlom myši a kliknite na možnosť zrušiť archív (afaik).

Modifikácia: ak je to manifest (rýchla trieda na spustenie a tak ďalej), potom je to jednoduché, avšak súbory java sú skompilované do súborov .class a pred úpravou ich treba rozobrať.

Ak chcete všetko poskladať, vyhľadajte príkaz „jar“ pre terminál pomocou Googlu.

Ak je to FOSS, je lepšie a jednoduchšie kompilovať zo zdroja; ak nie, tak si nemyslím, že je to 100% legitímne. D

dudleybrooks

Pôvodný plagát
4. apríla 2011
San Francisco
  • 15. apríla 2011
Potrebujem zmeniť riadok v súbore .js obsiahnutom v súbore .jar. Ale tvoja odpoveď objasňuje moju otázku:

Túto zmenu som vykonal pod Windowsom mnohokrát (konkrétne vždy, keď som si stiahol aktualizáciu, ktorá, samozrejme, vymazala moju predchádzajúcu zmenu). Osoba, ktorá odporučila zmenu, tiež odporučila (ne)archiver s názvom IZArc, v ktorom by sa celý proces dal vykonať zvnútra IZArc - otvorte (zrušte archiváciu) súboru .jar, nájdite súbor .js, upravte riadok ... a potom kliknutím na tlačidlo Ukončiť by sa všetko vrátilo do archivovaného stavu.

Rozumiem, že môžem zrušiť archiváciu súboru .jar pomocou ľubovoľného nástroja na zrušenie archivácie a upraviť súbor .js pomocou ľubovoľného textového editora. Myslím, že sa obávam, že keďže nie som programátor, mohol by som pri opätovnej archivácii urobiť niečo škodlivé -- nearchivovať všetky relevantné súbory, archivovať príliš veľa súborov alebo niečo také.

Moja otázka teda znie: Existuje nejaký archivátor (dúfajme, že v OS), ktorý všetko uvedené spraví sám zo seba, aby som vedel, že finálny .jar obsahuje presne tie súbory, ktoré by mal obsahovať? Alebo, ak sa to nepodarí, čo musím urobiť, aby som sa uistil, že som ho znova archivoval správne? Uvedomujem si, že na tomto fóre je to otázka pre úplných nováčikov.

nie justjay

19. september 2003
Kanada, však?
  • 15. apríla 2011
Ak sú súbory .jar jednoducho súbory ZIP s inou príponou, potom ich môžete voľne zipsovať a rozbaľovať z terminálu pomocou príkazov „zip“ a „unzip“.

chown33

Moderátor
Zamestnanec
9. augusta 2009
priepastná rovina
  • 15. apríla 2011
notjustjay povedal: No, ak sú súbory .jar jednoducho súbory ZIP s inou príponou, potom ich môžete voľne zipsovať a rozbaľovať z terminálu pomocou príkazov 'zip' a 'unzip'.

Alebo použite príkaz 'jar', ktorý je napísaný výslovne na tento účel a zachováva správne poradie manifestov (ktoré sa zvyčajne musia nachádzať ako prvý záznam, alebo nanajvýš jeden z niekoľkých prvých).

Som si celkom istý, že príkaz jar je štandardne nainštalovaný. Toto by malo platiť aj pre 10.7 Lion.
reakcie:abronsdilan

nie justjay

19. september 2003
Kanada, však?
  • 15. apríla 2011
chown33 povedal: Alebo použite príkaz 'jar', ktorý je napísaný výslovne na tento účel a zachováva správne poradie manifestov (ktoré sa zvyčajne musia nachádzať ako prvý záznam, alebo nanajvýš jeden z niekoľkých prvých).

Som si celkom istý, že príkaz jar je štandardne nainštalovaný. Toto by malo platiť aj pre 10.7 Lion.

Ach, ešte lepšie. Ďakujem, nevedel som o tom.

pilotError

12. apríla 2006
Dlhý ostrov
  • 15. apríla 2011
Alebo môžete použiť príkaz jar. Parametre sú rovnaké ako pri obslužných programoch zip v príkazovom riadku

$jar -xvf jarfile.jar ** Extrahuje súbory

** upraviť súbor **

$jar -cvf jarfile.jar ** Vytvorte nový súbor Jar
reakcie:abronsdilan D

dudleybrooks

Pôvodný plagát
4. apríla 2011
San Francisco
  • 15. apríla 2011
Vďaka. Metóda PilotError bola priama a úspešná – žiadne softvérové ​​chyby, chyby nováčikov alebo dokonca chyby pilotov. Stále to však malo viac krokov, ako som potreboval v systéme Windows: prepnutie z terminálu po odstránení z archívu na pracovnú plochu na použitie editora (moja chyba, pravdaže, že nepoznám unixové editory, ku ktorým má, predpokladám, terminál prístup) , potom späť do terminálu a zálohovanie - plus viac stlačení kláves potrebných pre príkazy unix. Stále by som chcel nájsť editor, ktorý to robí *všetko* v rámci jedného programu, ako to urobil IZArc vo Windows: ctrl-open, edit, ctrl-close -- zip-zip (smyslená slovná hračka)!

chown33

Moderátor
Zamestnanec
9. augusta 2009
priepastná rovina
  • 15. apríla 2011
dudleybrooks povedal: Ďakujem. Metóda PilotError bola priama a úspešná – žiadne softvérové ​​chyby, chyby nováčikov alebo dokonca chyby pilotov. Stále to však malo viac krokov, ako som potreboval v systéme Windows: prepnutie z terminálu po odstránení z archívu na pracovnú plochu na použitie editora (moja chyba, pravdaže, že nepoznám unixové editory, ku ktorým má, predpokladám, terminál prístup) , potom späť do terminálu a zálohovanie - plus viac stlačení kláves potrebných pre príkazy unix. Stále by som chcel nájsť editor, ktorý to robí *všetko* v rámci jedného programu, ako to urobil IZArc vo Windows: ctrl-open, edit, ctrl-close -- zip-zip (smyslená slovná hračka)!

Neviem o žiadnom nástroji, ktorý by dokázal všetko. Úprimne povedané, toto je prvýkrát, čo som videl niekoho, kto sa pýta, ako upraviť súbor v jar v systéme Mac OS, takže predpokladám, že neexistuje veľký cieľový trh.

Príkazové riadky môžete vložiť do terminálu, takže príkazy jednoducho uložte do textového súboru a potom ich skopírujte a prilepte. Nie je potrebné písať.

Tu je zhruba to, čo by som uložil do textového súboru:
Kód: |_+_| Samozrejme by ste mali zmeniť súbor jarfile.jar na skutočný súbor jar, ktorý máte.

Ukázal som ##, pretože to je skutočný znak komentára pre bash.

Tiež som ukázal príkaz 'open -e' s názvom cesty, ktorý budete musieť nahradiť. Open -e otvorí pomenovaný súbor v TextEdit.app. Ak máte namiesto toho iný editor, ktorý uprednostňujete, môžete povedať 'open', aby ho použil namiesto toho. Tu je manuálová stránka pre príkaz 'open':
http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/open.1.html
Pozrite sa najmä na možnosti -a a -b.

Nakoniec tam môžete vložiť ďalšie príkazy, ako napríklad „cd someDir“ alebo čokoľvek iné, čo chcete.

Pravdepodobne by ste mohli napísať „sed“ skript na nahradenie, takže by ste nemuseli súbor vôbec upravovať ručne. Potom by ste mohli celú vec urobiť do skriptu shellu, zabaliť ho do skriptu AppleScript a uložiť ho ako kvapôčku. Potom v budúcnosti jednoducho pustíte svoju pôvodnú aplikáciu do kvapôčky AppleScript a automaticky vykoná všetky zmeny. Všetky tieto veci by ste však museli písať a ladiť a pravdepodobne by to zabralo hodiny viac času, než len kopírovanie/vkladanie pri aktualizácii aplikácie.

Ak je zmena v jar niečo, čo by mal poskytnúť dodávateľ, pravdepodobne by ste mali podať hlásenie o chybe aplikácie. Pretože najčistejšia oprava je, že ju vôbec nemusíte opravovať sami.

pilotError

12. apríla 2006
Dlhý ostrov
  • 15. apríla 2011
V systéme Windows môžete použiť programy ako pkzip alebo winzip, ktoré zobrazujú obsah v okne, a stačí dvakrát kliknúť na súbor, ktorý sa potom rozbalí a odošle do súvisiaceho programu (editor).

Pod OS X sú nástroje zip, ale pravdaže, nepoužívam OS X ako Windows. Som si istý, že by ste mohli vystopovať jeden z programov, ktorý vám umožní urobiť to isté, ale pre to, čo tu bolo potrebné, sa to neoplatilo hľadať. D

dudleybrooks

Pôvodný plagát
4. apríla 2011
San Francisco
  • 16. apríla 2011
PilotError a Chown33: Som si istý, že máte pravdu s nedostatkom trhu v OS X.

Chown33: Ďakujem za rady o automatizácii a podrobnostiach. skúsim ich. OMG, možno sa zo mňa stane programátor!

*Myslím si, že je to niečo, čo by sa malo opraviť, ale nie je to chyba: Thunderbird má funkciu rozšíreného vyhľadávania pre e-mailové adresy, ktoré môžu vrátiť viacero adries. Ak kliknete na Zapísať, umiestni ich všetky do polí „Komu“ (bez inej možnosti). Táto zmena ich zaraďuje do polí „BCC“ pre lepšiu netiketu. TB 1.x mal kedysi túto možnosť, ale stratil ju v 2.x. P

peregin55

25. február 2008
  • 8. mája 2011
Emacs urobí, čo chcete

Na Linuxe a Mac OS X používam emacs na úpravu súborov v jar. Stačí zadať:

emacs somejar.jar

Potom môžete prechádzať všetky súbory v jar, otvárať, ukladať, čokoľvek pomocou štandardných príkazov emacs. Akékoľvek zmeny, ktoré vykonáte, sa automaticky aplikujú na nádobu (nie je potrebné nič ručne otvárať)
reakcie:abronsdilan D

dudleybrooks

Pôvodný plagát
4. apríla 2011
San Francisco
  • 8. mája 2011
Vďaka!

peregin55

To je dobré vedieť.

-
Dudley B

veľká katastrofa

14. januára 2010
  • 8. júna 2012
argh. nejde to. Potrebujem nahradiť pár reťazcov v súboroch .class (používam presne rovnaký počet symbolov), potom to skúsim prebaliť príkazom jar, no výsledný súbor je o pár bajtov menší ako ten pôvodný a keď skúste si to nainštalovať na môj mobil, píše sa mi 'nesprávny formát jar'.
Nejaké nápady?

TopHatProductions115

22. augusta 2016
  • 10. novembra 2016
pilotError povedal: Alebo môžete použiť príkaz jar. Parametre sú rovnaké ako pri obslužných programoch zip v príkazovom riadku

$jar -xvf jarfile.jar ** Extrahuje súbory

** upraviť súbor **

$jar -cvf jarfile.jar ** Vytvorte nový súbor Jar


Bude to fungovať pre podpísané java archívy?

michaelwarne

11. novembra 2016
  • 11. novembra 2016
Na úpravu súborov v akýchkoľvek komprimovaných textových súboroch môžete použiť editor vim.
  1. Prejdite na umiestnenie súboru z terminálu.
  2. Napíšte vim name.jar
  3. Vyberte súbor, ktorý chcete zmeniť, a stlačte Enter
  4. Upravte súbor a stlačte Esc a :wq! uložiť a ukončiť.
Dúfam, že to pomôže.

okieiam

17. decembra 2016
  • 18. decembra 2016
áno, aj ja som používal 7zip na úpravu classpath v súbore jar vo Windows J

jtara

23. apríla 2009
  • 21. decembra 2016
Ak potrebujete upraviť thunderbird.app, použite zdroj, vykonajte zmenu a vytvorte ju.

https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Build_Instructions C

Clovr

13. novembra 2018
  • 13. novembra 2018
michaelwarne povedal: Na úpravu súborov v akýchkoľvek komprimovaných textových súboroch môžete použiť editor vim.
  1. Prejdite na umiestnenie súboru z terminálu.
  2. Napíšte vim name.jar
  3. Vyberte súbor, ktorý chcete zmeniť, a stlačte Enter
  4. Upravte súbor a stlačte Esc a :wq! uložiť a ukončiť.
Dúfam, že to pomôže.
nemôžeme to automatizovať pomocou bashu? veľmi by mi pomohlo, keby si to osvietil.
reakcie:abronsdilan