Egyéb

Mac Hogyan lehet módosítani egy java .jar fájlt?

D

dudleybrooks

Eredeti plakát
2011. április 4
San Francisco
  • 2011. április 14
Egy egyszerű módosítást kell végrehajtanom egy alkalmazásban (Thunderbird.app) -- egyetlen sort módosítanom egy .jar fájlban. A régi Windows számítógépemen tudtam, hogy milyen szoftvert kell használni. Mi a legegyszerűbb módja a Snow Leopardban a .jar fájl megnyitásának, módosításának és mentésének az alkalmazásban? Lehetőleg az operációs rendszerbe beépített dolgokat használjon; ha nem, akkor ingyenes szoftverrel?

jiminaus

2010. december 16


Sydney
  • 2011. április 15
A .jar fájl csak egy .zip fájl más kiterjesztéssel (és valamilyen szabványos/előre meghatározott elrendezéssel). Használhatja a szabványos zip és unzip programokat a /usr/bin könyvtárban a .jar fájl módosításához, feltéve, hogy nincs aláírva.

Az „egy sor módosítása .jar fájlban” nincs közvetlenül értelme a .jar fájl kontextusában. Ha pontosan elmondja, mit szeretne csinálni ezzel a .jar fájllal, akkor talán meg tudjuk mondani, hogy milyen Mac OS X eszközöket/programokat használhat és hogyan. M

mufflon

2006. szeptember 15
  • 2011. április 15
Vezeték nélkül közzétéve (Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_2_1, mint a Mac OS X; sv-se) AppleWebKit/533.17.9 (KHTML, mint a Gecko) Version/5.0.2 Mobile/8C148 Safari/6533.18.5)

Valójában három fázis van: a kitermelés, a módosítás és az összeszerelés.

A kicsomagolás egyszerű: kattintson a jobb gombbal, majd kattintson az archiválás megszüntetése (afaik) gombra.

Módosítás: ha ez a manifest (futtatandó whick class és így tovább), akkor egyszerű, de a java fájlok .class fájlokba vannak fordítva, és a módosítás előtt szét kell szedni.

Mindennek összerakásához keresse meg a google-ban a terminál 'jar' parancsát.

Ha FOSS, akkor jobb és egyszerűbb a forrásból fordítani; ha nem, akkor szerintem nem 100%-ban legális. D

dudleybrooks

Eredeti plakát
2011. április 4
San Francisco
  • 2011. április 15
Módosítanom kell egy sort a .jar fájlban található .js fájlban. De a válaszod pontosítja a kérdésem:

Ezt a változtatást sokszor, sokszor végrehajtottam Windows alatt (mégpedig minden alkalommal, amikor letöltöttem egy frissítést, amivel természetesen eltüntették a korábbi változtatásomat). A változtatást javasoló személy ajánlott egy IZArc nevű (un)archiválót is, amelyben az egész folyamatot az IZArc belsejéből lehetne elvégezni -- megnyitni (archiválni) a .jar fájlt, megkeresni a .js fájlt, szerkeszteni a sort... majd a Kilépés gombra kattintva minden visszaáll az archivált állapotba.

Tudomásul veszem, hogy a .jar fájl archiválását bármelyik unarchiverrel kibonthatom, és a .js fájlt bármilyen szövegszerkesztővel szerkeszthetem. Azt hiszem, az aggaszt, hogy mivel nem vagyok programozó, valami ártalmasat tehetek az újraarchiválás során – nem archiválom az összes releváns fájlt, vagy túl sok fájlt archiválok, vagy ilyesmi.

Tehát a kérdésem a következő: Van-e olyan archiváló (remélhetőleg az operációs rendszerben), amely a fentieket saját magából hajtja végre, hogy tudjam, a végső .jar pontosan azokat a fájlokat tartalmazza, amelyeket tartalmaznia kell? Vagy ennek hiányában mit kell tennem, hogy megbizonyosodjak arról, hogy megfelelően újra archiváltam? Tudom, hogy ezen a fórumon ez egy teljesen újonc kérdés.

nem csak Jay

2003. szeptember 19
Kanada, mi?
  • 2011. április 15
Nos, ha a .jar fájlok egyszerűen más kiterjesztésű ZIP fájlok, akkor a „zip” és „unzip” parancsok használatával szabadon tömörítheti és kicsomagolhatja őket a terminálból.

chown33

Moderátor
Munkatárs
2009. augusztus 9
az Abysmal Plane
  • 2011. április 15
notjustjay mondta: Nos, ha a .jar fájlok egyszerűen más kiterjesztésű ZIP fájlok, akkor a 'zip' és 'unzip' parancsok használatával szabadon tömörítheti és kicsomagolhatja őket a terminálból.

Vagy használja a „jar” parancsot, amely kifejezetten erre a célra van írva, és fenntartja a jegyzékek helyes sorrendjét (amelynek általában az első bejegyzésnek kell lennie, vagy legfeljebb az első néhány egyikének kell lennie).

Biztos vagyok benne, hogy a jar parancs alapértelmezés szerint telepítve van. Ennek továbbra is igaznak kell lennie a 10.7 Lion esetében is.
Reakciók:abronsdilan

nem csak Jay

2003. szeptember 19
Kanada, mi?
  • 2011. április 15
chown33 mondta: Vagy használja a 'jar' parancsot, amely kifejezetten erre a célra van írva, és fenntartja a jegyzékek helyes sorrendjét (amelynek általában az első bejegyzésnek kell lennie, vagy legfeljebb az első néhány egyikének).

Biztos vagyok benne, hogy a jar parancs alapértelmezés szerint telepítve van. Ennek továbbra is igaznak kell lennie a 10.7 Lion esetében is.

Ah, még jobb. Köszi, erről nem tudtam.

pilotError

2006. április 12
Long Island
  • 2011. április 15
Vagy használhatja a jar parancsot. A paraméterek olyanok, mint a parancssori zip segédprogramok

$jar -xvf jarfile.jar ** Kibontja a fájlokat

** a fájl szerkesztése **

$jar -cvf jarfile.jar ** Hozza létre az új Jar fájlt
Reakciók:abronsdilan D

dudleybrooks

Eredeti plakát
2011. április 4
San Francisco
  • 2011. április 15
Kösz. A PilotError módszere egyszerű és sikeres volt – nem voltak szoftverhibák, kezdők hibái vagy akár pilothibák. De még mindig több lépésből állt, mint amennyire szükségem volt a Windowsban: az archiválás megszüntetése után váltani a terminálról az asztalra, hogy szerkesztőt használhassak (bevallom, az én hibám, hogy nem ismerem a unix szerkesztő(ke)t, amelyekhez feltételezem, hogy a Terminál hozzáfér) , majd vissza a terminálba az újraarchiváláshoz -- plusz a unix parancsokhoz szükséges több billentyűleütés. Még mindig szeretnék egy olyan szerkesztőt találni, amely *mindent* egy programon belül megcsinál, mint ahogy az IZArc tette a Windowsban: ctrl-nyitás, szerkesztés, ctrl-bezárás -- zip-zip (szójáték)!

chown33

Moderátor
Munkatárs
2009. augusztus 9
az Abysmal Plane
  • 2011. április 15
dudleybrooks azt mondta: Köszönöm. A PilotError módszere egyszerű és sikeres volt – nem voltak szoftverhibák, kezdők hibái vagy akár pilothibák. De még mindig több lépésből állt, mint amennyire szükségem volt a Windowsban: az archiválás megszüntetése után váltani a terminálról az asztalra, hogy szerkesztőt használhassak (bevallom, az én hibám, hogy nem ismerem a unix szerkesztő(ke)t, amelyekhez feltételezem, hogy a Terminál hozzáfér) , majd vissza a terminálba az újraarchiváláshoz -- plusz a unix parancsokhoz szükséges több billentyűleütés. Még mindig szeretnék egy olyan szerkesztőt találni, amely *mindent* egy programon belül megcsinál, mint ahogy az IZArc tette a Windowsban: ctrl-nyitás, szerkesztés, ctrl-bezárás -- zip-zip (szójáték)!

Nem tudok olyan eszközről, ami mindent megcsinál. Őszintén szólva, ez az első alkalom, hogy valaha is láttam valakit, aki megkérdezi, hogyan lehet szerkeszteni egy fájlt egy jar-ben Mac OS rendszeren, úgyhogy azt hiszem, nincs nagy célpiac.

A parancssorokat beillesztheti a terminálba, ezért csak mentse a parancsokat egy szöveges fájlba, majd másolja és illessze be. Nincs szükség gépelésre.

Nagyjából a következőt mentenék el a szöveges fájlba:
Kód: |_+_| Nyilvánvalóan módosítania kell a jarfile.jar fájlt a tényleges jar fájlra.

Megmutattam a ##-t, mert ezek a bash tényleges megjegyzés karakterei.

Megmutattam egy 'open -e' parancsot is olyan elérési útnévvel, amelyet le kell majd cserélned. Az open -e megnyitja a megnevezett fájlt a TextEdit.app alkalmazásban. Ha egy másik szerkesztőt szeretne helyette, akkor az „open” parancsot használhatja helyette. Itt van az 'open' parancs kézikönyvoldala:
http://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man1/open.1.html
Nézze meg különösen az -a és -b opciókat.

Végül más parancsokat is behelyezhet, mint például a 'cd someDir' vagy bármi mást, amit akar.

Valószínűleg írhat egy 'sed' szkriptet a csere elvégzéséhez, így egyáltalán nem kell manuálisan szerkesztenie a fájlt. Ezután az egészet shell-szkriptké alakíthatja, becsomagolhatja egy AppleScript-be, és elmentheti cseppként. Ezután a jövőben egyszerűen csak ejtse az eredeti alkalmazást az AppleScript cseppecskébe, és az automatikusan végrehajtja az összes módosítást. Mindazonáltal mindent meg kell írnia és hibakeresnie kell, és valószínűleg órákkal több időt vesz igénybe, mint pusztán másolás/beillesztés, amikor az alkalmazás frissül.

Ha a jar módosítását az eladónak kell biztosítania, valószínűleg hibajelentést kell benyújtania az alkalmazás ellen. Mert a legtisztább megoldás az, ha egyáltalán nem kell magának javítania.

pilotError

2006. április 12
Long Island
  • 2011. április 15
Windowson használhat olyan programokat, mint a pkzip vagy a winzip, amelyek megjelenítik az ablak tartalmát, és egyszerűen kattintson duplán egy fájlra, amelyet a rendszer kicsomagol a burkolat alatt, és elküldi a kapcsolódó programnak (szerkesztőnek).

Vannak zip segédprogramok OS X alatt, de bevallom, nem használom az OS X-et, mint a Windowst. Biztos vagyok benne, hogy megtaláltad valamelyik programot, amivel ugyanezt megteheted, de ami itt kellett, arra nem volt érdemes rákeresni. D

dudleybrooks

Eredeti plakát
2011. április 4
San Francisco
  • 2011. április 16
PilotError és Chown33: Biztos vagyok benne, hogy igazad van az OS X piacának hiányával kapcsolatban.

Chown33: Köszönjük az automatizálással kapcsolatos tanácsokat és a részleteket. kipróbálom őket. OMG, lehet, hogy programozó leszek!

Ezt *szerintem* javítani kellene, de ez nem hiba: a Thunderbird rendelkezik Advanced Search szolgáltatással az e-mail címekhez, amely több címet is visszaadhat. Ha rákattint az Írás gombra, akkor az összeset a 'Címzett' mezőkbe helyezi (más lehetőség nélkül). A változtatás a „BCC” mezőkbe helyezi őket a jobb netikett érdekében. A TB 1.x-ben korábban volt ez a lehetőség, de a 2.x-ben elvesztette. P

peregin55

2008. február 25
  • 2011. május 8
Az Emacs azt csinál, amit akarsz

Linuxon és Mac OS X rendszeren az emacs segítségével szerkeszthetem a jar-ben lévő fájlokat. Csak gépelj:

emacs somejar.jar

Ezután böngészhet a jarban lévő összes fájl között, megnyithatja, elmentheti, bármit a szabvány emacs parancsokkal. Bármilyen változtatást végrehajt, a rendszer automatikusan alkalmazza az edényt (nincs szükség kézzel törölni semmit)
Reakciók:abronsdilan D

dudleybrooks

Eredeti plakát
2011. április 4
San Francisco
  • 2011. május 8
Kösz!

peregin55

Ezt jó tudni.

-
Dudley B

nagy katasztrófa

2010. január 14
  • 2012. június 8
argh. nem megy. Cserélnem kell néhány karakterláncot a .class fájlokban (pont ugyanannyi szimbólumot használok), majd megpróbálom újracsomagolni jar paranccsal, de a kapott fájl néhány bájttal kisebb, mint az eredeti, és amikor próbáld meg telepíteni a mobilomra, azt írja ki, hogy 'rossz jar formátum'.
Bármilyen ötletet?

TopHatProductions115

2016. augusztus 22
  • 2016. november 10
pilotError azt mondta: Vagy használhatja a jar parancsot. A paraméterek olyanok, mint a parancssori zip segédprogramok

$jar -xvf jarfile.jar ** Kibontja a fájlokat

** a fájl szerkesztése **

$jar -cvf jarfile.jar ** Hozza létre az új Jar fájlt


Működni fog ez aláírt Java archívumoknál?

michaelwarne

2016. november 11
  • 2016. november 11
A vim szerkesztővel bármilyen tömörített szövegfájlban szerkesztheti a fájlokat.
  1. Navigáljon a fájl helyére a terminálról.
  2. Írja be a vim name.jar
  3. Válassza ki a módosítani kívánt fájlt, és nyomja meg az Enter billentyűt
  4. Szerkessze a fájlt, majd nyomja meg az Esc és a :wq billentyűket! menteni és kilépni.
Remélem ez segít.

okeiam

2016. december 17
  • 2016. december 18
igen, én is a 7zip-et használtam a jar fájl osztályútjának szerkesztéséhez Windows rendszerben J

jtara

2009. április 23
  • 2016. december 21
Ha módosítania kell a thunderbird.app alkalmazást, használja a forrást, hajtsa végre a módosítást, és készítse el.

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

Clovr

2018. november 13
  • 2018. november 13
michaelwarne azt mondta: A vim szerkesztővel bármilyen tömörített szövegfájlban szerkesztheti a fájlokat.
  1. Navigáljon a fájl helyére a terminálról.
  2. Írja be a vim name.jar
  3. Válassza ki a módosítani kívánt fájlt, és nyomja meg az Enter billentyűt
  4. Szerkessze a fájlt, majd nyomja meg az Esc és a :wq billentyűket! menteni és kilépni.
Remélem ez segít.
ezt nem automatizálhatjuk bash segítségével? sokat segítene, ha felvilágosítana rajta.
Reakciók:abronsdilan