Avatar billede jonfogh Nybegynder
30. august 2004 - 11:57 Der er 8 kommentarer og
1 løsning

Jars i Jars

Har udviklet et program, som jeg gerne vil have komprimeret til en jar, det er i sig selv ikke et problem og har også gjort det mange gange før. Men nu vil jeg gerne i min jar referere/bruge en anden jar, som således også skal med i min nye jar.

Problemet er at jeg sagtens kan køre mit program og refererer til 3. parts jaren gennem eclipse, men når jeg ønsker at eksportere programmet til en jar, får jeg en NoClassDefFound på runtime ... derfor er mit spørgsmål, kan det virkeligt passe man ikke kan referere til en en 3. parts jar i ens egen jar?

For at gøre det ekstra underligt kan java på runtime godt genkende/acceptere at jeg importere klasser fra den specielle jar, men hvis jeg begynder at initialisere dem kommer den og brokker sig!

Nogen som ved hvad der er galt / og eller hvordan jeg kan løse problemet? Min .classpath ser således ud:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry exported="true" kind="lib" path="lib/javagroups-all.jar"/>
    <classpathentry exported="true" kind="lib" path="lib/crimson.jar"/>
    <classpathentry exported="true" kind="lib" path="lib/jms.jar"/>
    <classpathentry exported="true" kind="lib" path="lib/xercesimpl-2.1.0.jar"/>
    <classpathentry exported="true" kind="lib" path="lib/xercesxmlapi-2.1.0.jar"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="output" path="bin"/>
</classpath>
Avatar billede arne_v Ekspert
30. august 2004 - 12:07 #1
Java kan ikke bruge jar filer som ligge rinde i jar filer (medmindre
vi snakker ear/war som er specielle).

En jar fil kan referere til en anden jar fil ved at have at Class-Path
direktiv i manifestet.

Så prøv og ændre i manifestet på den jar fil du laver.
Avatar billede jonfogh Nybegynder
30. august 2004 - 12:22 #2
Ok, har du et eksempel på hvordan et sådan direktiv kunne se ud?
Avatar billede arne_v Ekspert
30. august 2004 - 12:28 #3
Class-Path: foobar.jar
Avatar billede jonfogh Nybegynder
30. august 2004 - 12:42 #4
Tak, hvordan "belønner" jeg dig for dette gode og hurtige svar?
Avatar billede arne_v Ekspert
30. august 2004 - 13:35 #5
Jeg ligger et svar og du accepterer
Avatar billede arne_v Ekspert
30. august 2004 - 13:35 #6
Du fik det til at virke ?
Avatar billede jonfogh Nybegynder
30. august 2004 - 13:45 #7
Ja jeg fik det til at virke, hvor accepterer jeg?
Avatar billede arne_v Ekspert
30. august 2004 - 14:09 #8
Du skulle gerne kunne markere mit navn så det bliver blåt ude til højre
i combo boxen og så klikke på en accepter button
Avatar billede arne_v Ekspert
11. september 2004 - 21:23 #9
??
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester