Gå til innhold

Anbefalte innlegg

Skrevet (endret)

Har nettopp levert en oblig der man skulle lage et spamfilter med GUI. Pakket det hele inn i en jarfil slik at det ikke skulle blir så altfor mange filer. Problemet er ved innlesning av filer, så bruker man en tilleggspakke som heter easyIO. Feilen jeg får er "java.lang.NoClassDefFoundError: easyIO/In", etterfulgt av masse annet tull (som man ikke trenger å bry seg om). Dette tyder på at jarfilen min ikke klarer å få tak i easyIO-pakken og bruke denne. Hvordan løser man så dette problemet? Må man kanskje legge til noe i MANIFEST.MF-filen? I så fall, hva da?

Endret av ti-guru
Videoannonse
Annonse
Skrevet

Det skulle holde å pakke dem i samme jar fil, bare pass på at mappene i jar filen og pakkedefinisjonene i koden stemmer overens så skulle det gå bra (easyIO filene skal ligge i en mappe som heter easyIO inni pakken).

 

Hvis du har dem i ulike pakker må du angi classpath med -cp direktivet til java.

 

Eller du kan gjøre deg selv en tjeneste å bruke java.io direkte, slike forenklingspakker forlenger egentlig bare veien til forståelse etter min mening.

Skrevet

Hehe kvitt deg med easyIO, java sin egen IO er ikke vanskelig. Har du foresten sett at en av mailene bruker base64.

Skrevet

okey... da er vi enig. skal begynne å bruke java.io i stedet. kab vel i grunn bare klippe og lime fra easyIO mhp hva slags innlesning man ønsker.

  • 2 måneder senere...
Skrevet

Merkelige forslag..

 

Til neste oblig..! Dersom din .jar pakke er avhengig av andre pakker bør du løse dette på følgende måte:

 

Editer manifestet. Angi classpath for eksterne pakker. Ikke bland intern pakkestruktur i .jar filen med stinavnet til eksterne pakker. Stinavnet er abstrakt og roten (/) til stinavnet begynner der .jar filen er lagret. Eks. på manifest til MyJar.jar:

main-class: com.domain.me.MyMainClass

Class-Path: subfolders/of/MyJar/easyio.jar subfolders/of/MyJar/another.jar

 

Happy packaging!

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...