On 24.07.2010 01:13:01 Bernard Giannetti wrote: > > Hi, > > I've noticed there's a lot of 3rd party JAR files bundled with FOP 1.0, > notably: > > avalon-framework-4.2.0.jar > batik-all-1.7.jar > commons-io-1.3.1.jar > commons-logging-1.0.4.jar > serializer-2.7.0.jar > xalan-2.7.0.jar > xercesImpl-2.7.1.jar > xml-apis-1.3.04.jar > xml-apis-ext-1.3.04.jar > xmlgraphics-commons-1.3.1.jar > > and was wondering how many do I actually need? If "all I'm doing" is > using FOP to render an XML file using XSL template to a PDF, is there a > way to trim out the unwanted JARs?
Batik is supposed to be optional but I'm not sure that it'll work properly without it. If you're not using SVG, try to omit it. If it works, you're fine. xml-apis-ext should be optional, too, if Batik is out of the picture. Xerces, Xalan, Serializer and xml-apis are not strictly required but some JDKs have buggy XML parsers or XSLT implementations so I always use my own verified JARs. The other JARs are mandatory. > I can do a clean compile of my application, minus the JARs above listed > in the classpath. If I can the run my application and exercise the FOP > part of it, does that tell me which JARs I can drop or am I being too > naive? In the end, just omit one of the ones I've listed and check if it works without. Trial & Error. ;-) If you get a ClassDefNotFoundError, you're missing a JAR. > On a somewhat related note, in doing an ANT build and setting the compiler > args as follows: > > <compilerarg value="-Xlint:deprecation,fallthrough,finally,path,unchecked" /> > > I get a few path warnings: > > [javac] warning: [path] bad path element "/lib/fop-hyph.jar": no such > file or directory > [javac] warning: [path] bad path element "/lib/xml-apis.jar": no such > file or directory > [javac] warning: [path] bad path element "/lib/xercesImpl.jar": no such > file or directory > [javac] warning: [path] bad path element "/lib/serializer.jar": no such > file or directory > [javac] warning: [path] bad path element "/lib/log4j.jar": no such file > or directory > > So are these old manifest entries that have not been updated to the new > versions? Can I safely remove these from the mainfests in the FOP JAR files? These were used solely for running FOP from the command-line. The classpath there is outdated and can be removed. Basically, we should remove it from FOP altogether, I think, since practically everyone uses our batch scripts if they run FOP from the command-line. Plus there is code in FOP, that constructs the classpath in code, rather than from the Manifest. > > Thanks, > > Bernard. Jeremias Maerki --------------------------------------------------------------------- To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org