Hallo,
Ik ben bezig een java applicatie te bouwen die gebruik maakt van externe Jar files (uit de SDK van business objects van crystal reports 4 eclipse). Als ik al deze JAR's in een aparte map "lib" zet naast de geëxporteerde applicatie, en ik mijn manifest netjes aanpas, vind hij alle benodigde jars uit de aangemaakte "lib" folder, toch geeft hij even later alsnog een "NoClassDefFoundError" error.
Zodra ik alle JAR's verplaats naar de "ext" folder van mijn JRE (C:\Program Files\Java\jre1.6.0\lib\ext), werkt alles in 1x wel. Toch zou ik graag mijn "lib" folder willen gebruiken omzo de applicatie uiteindelijk makkelijk te distribueren als 1 map. En om te voorkomen dat als er een JRE update is dat hij daarna ineens de ext folder met mijn JAR's niet meer kan vinden.
Heeft iemand een suggestie?
Hieronder een overzicht van melding en manifest config:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/Predicate
at com.crystaldecisions.reports.common.engine.ConfigurationMana ger.<init>(Unknown Source)
at com.crystaldecisions.reports.common.engine.Engine.configure( Unknown Source)
at com.crystaldecisions.reports.common.engine.Engine.getConfigu rationManager(Unknown Source)
at com.crystaldecisions.reports.common.engine.a.a(Unknown Source)
at com.crystaldecisions.reports.common.engine.Engine.getKeycode Manager(Unknown Source)
at com.businessobjects.reports.sdk.a.a(Unknown Source)
at com.businessobjects.reports.sdk.a.<init>(Unknown Source)
at com.businessobjects.reports.sdk.a.if(Unknown Source)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.void (UnknownSource)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.conn ect(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.y.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportAppSe ssion.int(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportAppSe ssion.initialize(Unknown Source) at com.crystaldecisions.sdk.occa.report.application.ClientDocum ent.for(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClien tDocument.for(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ClientDocum ent.open(Unknown Source)
at com.crystaldecisions.reports.sdk.ReportClientDocument.open(U nknown Source)
at connection.ClsCrystalReports.exportXML(ClsCrystalReports.jav a:61)
at profiles.ClsAposys.verwerkEMDs(ClsMijnklasse.java:66)
at main.ClsFarmadex.start(ClsAndereklasse.java:14)
at main.ClsFarmadex.main(ClsAndereklasse.java:9)
Dit is mijn manifest
Class-Path: lib\axis-ant.jar lib\axis.jar lib\cecore.jar lib\celib.jar
lib\commons-collections-3.1.jar lib\commons-configuration-1.2.jar lib\
commons-discovery.jar lib\commons-lang-2.1.jar lib\commons-logging.jar
lib\Concurrent.jar lib\corbaidl.jar lib\CRDBJavaServerCommon.jar lib\
CRDBXMLExternal.jar lib\CRDBXMLServer.jar lib\CrystalCharting.jar lib\
CrystalCommon.jar lib\CrystalContentModels.jar lib\CrystalDatabaseConn
ectors.jar lib\CrystalExporters.jar lib\CrystalExportingBase.jar lib\Cr
ystalFormulas.jar lib\CrystalQueryEngine.jar lib\CrystalReportEngine.j
ar lib\CrystalReportingCommon.jar lib\ebus405.jar lib\icu4j.jar lib\ja
xrpc.jar lib\jrcadapter.jar lib\jrcerom.jar lib\keycodeDecoder.jar lib
\log4j.jar lib\MetafileRenderer.jar lib\pullparser.jar lib\rasapp.jar
lib\rascore.jar lib\ReportPrinter.jar lib\ReportViewer.jar lib\rpoifs.
jar lib\saaj.jar lib\serialization.jar lib\tet.txt lib\URIUtil.jar lib\
webreporting-jsf.jar lib\webreporting.jar lib\wsdl4j.jar lib\xbean.ja
r lib\xercesImpl.jar lib\xml-apis.jar
Main-Class: main.myMainClass
Ik ben bezig een java applicatie te bouwen die gebruik maakt van externe Jar files (uit de SDK van business objects van crystal reports 4 eclipse). Als ik al deze JAR's in een aparte map "lib" zet naast de geëxporteerde applicatie, en ik mijn manifest netjes aanpas, vind hij alle benodigde jars uit de aangemaakte "lib" folder, toch geeft hij even later alsnog een "NoClassDefFoundError" error.
Zodra ik alle JAR's verplaats naar de "ext" folder van mijn JRE (C:\Program Files\Java\jre1.6.0\lib\ext), werkt alles in 1x wel. Toch zou ik graag mijn "lib" folder willen gebruiken omzo de applicatie uiteindelijk makkelijk te distribueren als 1 map. En om te voorkomen dat als er een JRE update is dat hij daarna ineens de ext folder met mijn JAR's niet meer kan vinden.
Heeft iemand een suggestie?
Hieronder een overzicht van melding en manifest config:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/Predicate
at com.crystaldecisions.reports.common.engine.ConfigurationMana ger.<init>(Unknown Source)
at com.crystaldecisions.reports.common.engine.Engine.configure( Unknown Source)
at com.crystaldecisions.reports.common.engine.Engine.getConfigu rationManager(Unknown Source)
at com.crystaldecisions.reports.common.engine.a.a(Unknown Source)
at com.crystaldecisions.reports.common.engine.Engine.getKeycode Manager(Unknown Source)
at com.businessobjects.reports.sdk.a.a(Unknown Source)
at com.businessobjects.reports.sdk.a.<init>(Unknown Source)
at com.businessobjects.reports.sdk.a.if(Unknown Source)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.void (UnknownSource)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.conn ect(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.y.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportAppSe ssion.int(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportAppSe ssion.initialize(Unknown Source) at com.crystaldecisions.sdk.occa.report.application.ClientDocum ent.for(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ReportClien tDocument.for(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ClientDocum ent.open(Unknown Source)
at com.crystaldecisions.reports.sdk.ReportClientDocument.open(U nknown Source)
at connection.ClsCrystalReports.exportXML(ClsCrystalReports.jav a:61)
at profiles.ClsAposys.verwerkEMDs(ClsMijnklasse.java:66)
at main.ClsFarmadex.start(ClsAndereklasse.java:14)
at main.ClsFarmadex.main(ClsAndereklasse.java:9)
Dit is mijn manifest
Class-Path: lib\axis-ant.jar lib\axis.jar lib\cecore.jar lib\celib.jar
lib\commons-collections-3.1.jar lib\commons-configuration-1.2.jar lib\
commons-discovery.jar lib\commons-lang-2.1.jar lib\commons-logging.jar
lib\Concurrent.jar lib\corbaidl.jar lib\CRDBJavaServerCommon.jar lib\
CRDBXMLExternal.jar lib\CRDBXMLServer.jar lib\CrystalCharting.jar lib\
CrystalCommon.jar lib\CrystalContentModels.jar lib\CrystalDatabaseConn
ectors.jar lib\CrystalExporters.jar lib\CrystalExportingBase.jar lib\Cr
ystalFormulas.jar lib\CrystalQueryEngine.jar lib\CrystalReportEngine.j
ar lib\CrystalReportingCommon.jar lib\ebus405.jar lib\icu4j.jar lib\ja
xrpc.jar lib\jrcadapter.jar lib\jrcerom.jar lib\keycodeDecoder.jar lib
\log4j.jar lib\MetafileRenderer.jar lib\pullparser.jar lib\rasapp.jar
lib\rascore.jar lib\ReportPrinter.jar lib\ReportViewer.jar lib\rpoifs.
jar lib\saaj.jar lib\serialization.jar lib\tet.txt lib\URIUtil.jar lib\
webreporting-jsf.jar lib\webreporting.jar lib\wsdl4j.jar lib\xbean.ja
r lib\xercesImpl.jar lib\xml-apis.jar
Main-Class: main.myMainClass