Jiný

Mac Jak upravit soubor java .jar?

D

dudleybrooks

Původní plakát
4. dubna 2011
San Francisco
  • 14. dubna 2011
Potřebuji provést jednoduchou úpravu v aplikaci (Thunderbird.app) -- změnit jeden řádek v souboru .jar. Na svém starém počítači s Windows jsem věděl, jaký software použít. Jaký je ve Snow Leopard nejjednodušší způsob, jak otevřít, upravit a uložit soubor .jar v aplikaci? Nejlépe pomocí věcí, které jsou zabudovány do OS; pokud ne, tak pomocí freeware?

jiminaus

16. prosince 2010


Sydney
  • 15. dubna 2011
Soubor .jar je pouze soubor .zip s jinou příponou (a nějakým standardním/předdefinovaným rozložením). Ke změně souboru .jar můžete použít standardní programy zip a rozbalení v /usr/bin, za předpokladu, že není podepsaný.

„Změna jednoho řádku v souboru .jar“ nedává přímo smysl v kontextu souboru .jar. Pokud nám přesně řeknete, co chcete s tímto souborem .jar dělat, možná vám sdělíme, jaké nástroje/programy Mac OS X můžete použít a jak. M

mufflon

15. září 2006
  • 15. dubna 2011
Bezdrátově zveřejněno (Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_2_1 jako Mac OS X; sv-se) AppleWebKit/533.17.9 (KHTML, jako Gecko) Verze/5.0.2 Mobile/8C148 Safari/6533.18.5)

Ve skutečnosti existují tři fáze: extrakce, úprava a sestavení zpět dohromady.

Extrahování je snadné: klikněte pravým tlačítkem a klikněte na zrušit archiv (afaik).

Modifikace: pokud je to manifest (rychlá třída ke spuštění a tak dále), pak je to snadné, nicméně soubory java jsou zkompilovány do souborů .class a před úpravou je třeba je rozebrat.

Chcete-li dát vše dohromady, vygooglujte příkaz „jar“ pro terminál.

Pokud je to FOSS, je lepší a jednodušší kompilovat ze zdroje; pokud ne, tak si nemyslím, že je to 100% legitimní. D

dudleybrooks

Původní plakát
4. dubna 2011
San Francisco
  • 15. dubna 2011
Potřebuji změnit řádek v souboru .js obsaženém v souboru .jar. Ale vaše odpověď objasňuje mou otázku:

Tuto změnu jsem provedl mnohokrát pod Windows (konkrétně pokaždé, když jsem si stáhl aktualizaci, která samozřejmě smazala moji předchozí změnu). Osoba, která změnu doporučila, také doporučila (ne)archiver s názvem IZArc, ve kterém by se celý proces dal provést zevnitř IZArc -- otevřít (zrušit archivaci) souboru .jar, najít soubor .js, upravit řádek ... a poté kliknutím na Ukončit vrátíte vše do archivovaného stavu.

Chápu, že mohu zrušit archivaci .jar pomocí libovolného unarchiveru a upravit .js pomocí libovolného textového editoru. Myslím, že se obávám, že nebýt programátorem, mohl bych při opětovné archivaci udělat něco škodlivého – nearchivovat všechny relevantní soubory, archivovat příliš mnoho souborů nebo tak něco.

Moje otázka tedy zní: Existuje nějaký archivátor (doufejme v OS), který vše výše uvedené udělá sám zevnitř, abych věděl, že finální .jar obsahuje přesně ty soubory, které obsahovat má? Nebo, pokud se tak nestane, co musím udělat, abych se ujistil, že jsem jej znovu archivoval správně? Uvědomuji si, že na tomto fóru je to otázka pro úplného nováčka.

notjustjay

19. září 2003
Kanada, co?
  • 15. dubna 2011
Pokud jsou soubory .jar jednoduše soubory ZIP s jinou příponou, můžete je volně zipovat a rozbalovat z terminálu pomocí příkazů 'zip' a 'unzip'.

chown33

Moderátor
Zaměstnanec
9. srpna 2009
Propastná rovina
  • 15. dubna 2011
notjustjay řekl: No, pokud jsou soubory .jar jednoduše soubory ZIP s jinou příponou, pak je můžete volně zipovat a rozbalovat z terminálu pomocí příkazů 'zip' a 'unzip'.

Nebo použijte příkaz 'jar', který je napsán výslovně pro tento účel a zachovává správné pořadí manifestů (které se obvykle musí nacházet jako první položka nebo nanejvýš jedna z několika prvních).

Jsem si docela jistý, že příkaz jar je ve výchozím nastavení nainstalován. To by mělo platit i pro 10.7 Lion.
reakce:abronsdilan

notjustjay

19. září 2003
Kanada, co?
  • 15. dubna 2011
chown33 řekl: Nebo použijte příkaz 'jar', který je napsán výslovně pro tento účel a zachovává správné pořadí pro manifesty (které se obvykle musí nacházet jako první položka, nebo nanejvýš jedna z několika prvních).

Jsem si docela jistý, že příkaz jar je ve výchozím nastavení nainstalován. To by mělo platit i pro 10.7 Lion.

Ach, ještě lepší. Díky, o tom jsem nevěděl.

pilotError

12. dubna 2006
Dlouhý ostrov
  • 15. dubna 2011
Nebo můžete použít příkaz jar. Parametry jsou stejné jako u nástrojů zip příkazového řádku

$jar -xvf jarfile.jar ** Extrahuje soubory

** upravit soubor **

$jar -cvf jarfile.jar ** Vytvořte nový soubor Jar
reakce:abronsdilan D

dudleybrooks

Původní plakát
4. dubna 2011
San Francisco
  • 15. dubna 2011
Dík. Metoda PilotError byla přímočará a úspěšná – žádné softwarové chyby, chyby nováčků nebo dokonce chyby pilota. Ale stále to mělo více kroků, než jsem dříve potřeboval ve Windows: přepnutí z Terminálu po rozbalení na plochu pro použití editoru (moje chyba, pravda, že neznám unixové editory, ke kterým má, předpokládám, Terminál přístup) , pak zpět do Terminálu k archivaci – plus více úhozů potřebných pro unixové příkazy. Stále bych chtěl najít editor, který to *všechno* udělá v jednom programu, jako to udělal IZArc ve Windows: ctrl-otevřít, upravit, ctrl-zavřít -- zip-zip (zamýšlená slovní hříčka)!

chown33

Moderátor
Zaměstnanec
9. srpna 2009
Propastná rovina
  • 15. dubna 2011
dudleybrooks řekl: Díky. Metoda PilotError byla přímočará a úspěšná – žádné softwarové chyby, chyby nováčků nebo dokonce chyby pilota. Ale stále to mělo více kroků, než jsem dříve potřeboval ve Windows: přepnutí z Terminálu po rozbalení na plochu pro použití editoru (moje chyba, pravda, že neznám unixové editory, ke kterým má, předpokládám, Terminál přístup) , pak zpět do Terminálu k archivaci – plus více úhozů potřebných pro unixové příkazy. Stále bych chtěl najít editor, který to *všechno* udělá v jednom programu, jako to udělal IZArc ve Windows: ctrl-otevřít, upravit, ctrl-zavřít -- zip-zip (zamýšlená slovní hříčka)!

Neznám žádný nástroj, který by dělal všechno. Upřímně řečeno, toto je poprvé, co jsem kdy viděl, že se někdo ptá, jak upravit soubor v jar v Mac OS, takže předpokládám, že neexistuje žádný velký cílový trh.

Příkazové řádky můžete vložit do Terminálu, takže stačí příkazy uložit do textového souboru a poté zkopírovat a vložit. Není potřeba psát.

Zde je zhruba to, co bych uložil do textového souboru:
Kód: |_+_| Samozřejmě byste měli změnit soubor jarfile.jar na skutečný soubor jar, který máte.

Ukázal jsem ##, protože to jsou skutečné komentáře pro bash.

Také jsem ukázal příkaz 'open -e' s názvem cesty, který budete muset nahradit. Otevřít -e otevře pojmenovaný soubor v TextEdit.app. Máte-li místo toho jiný editor, který preferujete, můžete říct 'otevřít', aby jej místo toho použil. Zde je manuálová stránka pro příkaz 'open':
http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/open.1.html
Podívejte se zejména na volby -a a -b.

Nakonec tam můžete vložit další příkazy, jako například 'cd someDir' nebo cokoli jiného, ​​co chcete.

Pravděpodobně byste mohli napsat 'sed' skript pro provedení nahrazení, takže byste nemuseli soubor vůbec ručně upravovat. Pak byste mohli celou věc udělat do skriptu shellu, zabalit to do skriptu AppleScript a uložit to jako droplet. Pak v budoucnu jednoduše pustíte svou původní aplikaci do dropletu AppleScript a všechny změny provede automaticky. Všechny ty věci byste však museli psát a ladit a pravděpodobně by to zabralo hodiny déle než pouhé kopírování/vkládání, když se aplikace aktualizuje.

Pokud je změna jara něco, co by měl dodavatel poskytnout, pravděpodobně byste měli podat hlášení o chybě aplikace. Protože nejčistší oprava je, že ji vůbec nemusíte opravovat sami.

pilotError

12. dubna 2006
Dlouhý ostrov
  • 15. dubna 2011
V systému Windows můžete použít programy jako pkzip nebo winzip, které zobrazují obsah v okně, a stačí dvakrát kliknout na soubor, který se poté rozbalí a odešle do přidruženého programu (editoru).

Pod OS X existují zipové nástroje, ale přiznávám, že nepoužívám OS X jako Windows. Jsem si jistý, že byste mohli vystopovat jeden z programů, který vám umožní udělat totéž, ale pro to, co bylo potřeba zde, nemělo cenu to hledat. D

dudleybrooks

Původní plakát
4. dubna 2011
San Francisco
  • 16. dubna 2011
PilotError a Chown33: Jsem si jistý, že máte pravdu s nedostatkem trhu v OS X.

Chown33: Díky za rady ohledně automatizace a souvisejících podrobností. zkusím je. OMG, možná se ze mě stane programátor!

Je to něco, co *podle mě* by mělo být opraveno, ale není to chyba: Thunderbird má funkci Advanced Search pro e-mailové adresy, které mohou vracet více adres. Pokud kliknete na Zapsat, vloží je všechny do polí 'Komu' (bez jiné možnosti). Tato změna vede k jejich zařazení do polí 'BCC', pro lepší netiketu. TB 1.x měl dříve tuto možnost, ale ztratil ji ve 2.x. P

peregin55

25. února 2008
  • 8. května 2011
Emacs udělá, co chcete

Na Linuxu a Mac OS X používám emacs k úpravě souborů v jar. Stačí napsat:

emacs somejar.jar

Pomocí standardních příkazů emacs pak můžete procházet všechny soubory v jaru, otevírat, ukládat, cokoliv. Jakékoli změny, které provedete, se automaticky použijí na nádobu (není třeba nic ručně odvařovat)
reakce:abronsdilan D

dudleybrooks

Původní plakát
4. dubna 2011
San Francisco
  • 8. května 2011
Dík!

peregin55

To je dobré vědět.

-
Dudley B

velká katastrofa

14. ledna 2010
  • 8. června 2012
argh. to nejde. Potřebuji vyměnit pár řetězců v souborech .class (používám přesně stejný počet symbolů), pak to zkusím přebalit příkazem jar, ale výsledný soubor je o pár bajtů menší než ten původní, a když zkuste si to nainstalovat na můj mobil, píše to 'špatný formát jar'.
Nějaké nápady?

TopHatProductions115

22. srpna 2016
  • 10. listopadu 2016
pilotError řekl: Nebo můžete použít příkaz jar. Parametry jsou stejné jako u nástrojů zip příkazového řádku

$jar -xvf jarfile.jar ** Extrahuje soubory

** upravit soubor **

$jar -cvf jarfile.jar ** Vytvořte nový soubor Jar


Bude to fungovat pro podepsané java archivy?

michaelwarne

11. listopadu 2016
  • 11. listopadu 2016
K úpravě souborů v libovolných komprimovaných textových souborech můžete použít editor vim.
  1. Přejděte do umístění souboru z terminálu.
  2. Zadejte název vim.jar
  3. Vyberte soubor, který chcete změnit, a stiskněte Enter
  4. Upravte soubor a stiskněte Esc a :wq! uložit a ukončit.
Snad to pomůže.

okieiam

17. prosince 2016
  • 18. prosince 2016
jo já taky, používal jsem 7zip k úpravě classpath v jar souboru ve Windows J

jtara

23. dubna 2009
  • 21. prosince 2016
Pokud potřebujete upravit thunderbird.app, použijte zdroj, proveďte změnu a vytvořte ji.

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

Clovr

13. listopadu 2018
  • 13. listopadu 2018
michaelwarne řekl: Můžete použít editor vim k úpravě souborů v jakýchkoli komprimovaných textových souborech.
  1. Přejděte do umístění souboru z terminálu.
  2. Zadejte název vim.jar
  3. Vyberte soubor, který chcete změnit, a stiskněte Enter
  4. Upravte soubor a stiskněte Esc a :wq! uložit a ukončit.
Snad to pomůže.
nemůžeme to automatizovat pomocí bashe? velmi by pomohlo, kdybyste si to osvětlili.
reakce:abronsdilan