Toon posts:

Java compiling naar JAR

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hoi

Ik zit even met een probleempje ik heb voor oracle een jar file, en een file met de source.

Die jar file heeft de goeie functies die ik op oracle server kan uitvoeren vanuit windows.

Maar ik wil nu ff wat toevoegen voor het beheer en ik heb gevonden hoe ik het in java kan doen maar ik weet niet hoe ik all die losse files weer terug in een JAR file kan krijgen.

Want in de JAR file die ik al had zaten geeen *.java files alleen *.class dus ik neem aan dat ik ze niet gewoon allemaal erin kan planten.

Ik heb maar ff de trail van Borland Jbuilder gedownload maar veel verder kom ik daar niet mee.

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

jar = gewoon een zip.. dus renamen naar zip.. je spul erbij plakken... weer renamen naar jar.

De vraag is of je dit wilt :P

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Een jar file is meestal een verzameling van gecompilde java klassen, vandaar dat je er ook .class files inziet staan.
Je moet jouw .java files compilen met de compiler (javac) en die vervolgens in de .jar zetten lijkt me
jar --help

Verwijderd

Topicstarter
ja eigenlijk is dat de bedoeling maar waarom zitten er in mijn originele JAR file dan geen *.java files en in de source file wel ?

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Verwijderd schreef op dinsdag 23 november 2004 @ 16:51:
ja eigenlijk is dat de bedoeling maar waarom zitten er in mijn originele JAR file dan geen *.java files
1) Jars worden onnodig groter
2) Je gaat je source toch niet aan de hele wereld kado doen?

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Alarmnummer schreef op dinsdag 23 november 2004 @ 16:53:
[...]

1) Jars worden onnodig groter
2) Je gaat je source toch niet aan de hele wereld kado doen?
1) jar files gebruiken dezelfde compressietechniek als zip, dus dat valt wel mee ;)
2) ooit van opensource gehoord ;)
Verwijderd schreef op dinsdag 23 november 2004 @ 16:51:
ja eigenlijk is dat de bedoeling maar waarom zitten er in mijn originele JAR file dan geen *.java files en in de source file wel ?
ehm, in je source file zitten .java files :? source == .java
.jar == java archive
waarin soms source files bijgedaan wordt, maar vaak niet.

Verwijderd

Topicstarter
Erkens ik zit g
Alarmnummer schreef op dinsdag 23 november 2004 @ 16:53:
[...]

1) Jars worden onnodig groter
2) Je gaat je source toch niet aan de hele wereld kado doen?
ewoon in windows dus jar --help werkt niet

Neej idd maar ik snap niet waar die *.java files dan zitten in mijn originele file, ergens gecompiled dacht ik zo maar ja waar. Maar ik zou jou manier een proberen gewoon renamen naar jar

  • Erkens
  • Registratie: December 2001
  • Niet online

Erkens

Fotograaf

Verwijderd schreef op dinsdag 23 november 2004 @ 16:59:
Erkens ik zit gewoon in windows dus jar --help werkt niet
ehm, dat werkt _ook_ met windows (alleen ff een oprdachtprompt opentrekken)
Neej idd maar ik snap niet waar die *.java files dan zitten in mijn originele file, ergens gecompiled dacht ik zo maar ja waar. Maar ik zou jou manier een proberen gewoon renamen naar jar
|:(
Ik denk dat jij even contact op moet nemen met diegene die jou die jar file heeft geleverd, immers die zal de source ook wel hebben, als die er niet bijzit dat zit die er niet bij.
Je hebt bij windows toch ook niet de source maar wel de gecompilede programma's?

Verwijderd

Topicstarter
maar renamen naar zip en files erin planten en weer renamen naar JAR werkt ook niet helaas.

Want mijn nieuwe functies doen het niet
Erkens schreef op dinsdag 23 november 2004 @ 16:57:

[...]

ehm, in je source file zitten .java files :? source == .java
.jar == java archive
waarin soms source files bijgedaan wordt, maar vaak niet.
Ja ik heb source files, die heb ik aangepast maar in ben nog al nieuwe met java applicaties, en ikheb geen idee hoe ik het compile

[ Voor 60% gewijzigd door Verwijderd op 23-11-2004 17:13 ]


Verwijderd

Een beetje uitleg misschien over java eerst:

Je code schrijf je in .java bestanden (=source, openbaar met gewone teksteditor, hoewel ik voor een IDE zou gaan als ik jou was). Via een compiler (zit in elke Java IDE), "converteer" je deze source in bytecode (.class bestanden). Deze bytecode is enkel en alleen interpreteerbaar via de Java Virtual Machine (=interpreter), welke het dus mogelijk maakt dat je programma platvormonafhankelijk is door op elk platvorm een JVM te draaien. Om de klassenvan een programma mooi samen te houden, gebruikt men een .jar bestand, wat een zip-bestand is met een veranderde extensie.

In deze jar, moeten de .class bestanden zitten die het programma gebruikt en zit ook een bestandje "manifest.mf" wat een regel bevat die je main class aangeeft (vb. Main-Class: Hoofdklasse).

Class bestanden zijn niet terug interpreteerbaar naar .java- bestanden, dus alsje enkel deze hebt, heb je de source niet. Soms zitten .java-bestanden bij in de jar, soms niet, afhankelijk van of de maker de source wil vrijgeven of niet. Ik meen te verstaan dat je de source heb en enkele functies (klassen?) wil toevoegen.

Wat je moet doen is de nieuwe klassen (.java) en gewijzigde klassen uit de oorspronkelijke source (.java) compilen naar .class bestanden, oude class'jes door nieuwe overschrijven, in jar pompen en je bent klaar..

Als Borlands JBuilder wat moeilijk lijkt te zijn is JCreator LE (= freeware) mss iets voor je...werkt vrij makkelijk.

[ Voor 17% gewijzigd door Verwijderd op 23-11-2004 17:41 ]


Verwijderd

installeer de java SDK(dat kan gewoon naast de runtime)
en je hebt jar.exe erbij, (bij mij in C:\Program Files\Java\jdk1.5.0\bin) plus alles wat je nodig hebt om te compilen, een IDE is alleen nodig als je echt gaat devven, niet voor wat je hier wilt. (het duurt denk ik langer om te leren omgaan met een IDE dan om de SDK te downen en uit te vogelen hoe jar werkt)
offtopic:
(mag ik toch ff eclipse pluggen hier? mijn persoonlijke favo, open source, kost niks, maar wel ingewikkeld, dus redelijke overkill om een jar in elkaar te schroeven)
Pagina: 1