没有找到FOP的课程

use*_*812 6 java apache-fop

嗨所以我试图使用FOP将xml文件转换为pdf并且我继续遇到错误,现在我有错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/xmlgraphics/io/ResourceResolver
at org.apache.fop.apps.FopConfParser.<init>(FopConfParser.java:122)
at org.apache.fop.apps.FopFactory.newInstance(FopFactory.java:132)
at run.ExampleFO2PDF.main(ExampleFO2PDF.java:62)
Run Code Online (Sandbox Code Playgroud)

我在构建路径中有FOP库以及xmlgraphicscommons日志Avalon框架

这是我试图运行的代码

        import java.io.BufferedOutputStream;
        import java.io.File;
        import java.io.FileNotFoundException;
        import java.io.FileOutputStream;
        import java.io.IOException;
        import java.io.OutputStream;

        import javax.xml.transform.Result;
        import javax.xml.transform.Source;
        import javax.xml.transform.Transformer;
        import javax.xml.transform.TransformerConfigurationException;
        import javax.xml.transform.TransformerException;
        import javax.xml.transform.TransformerFactory;
        import javax.xml.transform.sax.SAXResult;
        import javax.xml.transform.stream.StreamSource;

        import org.apache.fop.apps.*;
        import org.xml.sax.SAXException;

       public class pdf{
        public static void main(String[] args) throws SAXException, IOException, TransformerException
  {
        FopFactory fopFactory = FopFactory.newInstance(new File("."));
                OutputStream out = new BufferedOutputStream(new FileOutputStream(new File("D:/temp/myfile.pdf")));
                try {
                  Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, out);
                  TransformerFactory factory = TransformerFactory.newInstance();
                  Transformer transformer = factory.newTransformer(); // identity transformer
                  Source src = new StreamSource(new File("D:/temp/test.xml"));
                  Result res = new SAXResult(fop.getDefaultHandler());
                  transformer.transform(src, res);
                } finally {
                  //Clean-up
                  out.close();
                }
           }

    }
Run Code Online (Sandbox Code Playgroud)

小智 5

abstract interface org.apache.fop.apps.MimeConstants implements org.apache.xmlgraphics.util.MimeConstants
Run Code Online (Sandbox Code Playgroud)

org.apache.xmlgraphics.util.MimeConstants属于xmlgraphics-commons-1.5.jar.只需在类路径中包含xmlgraphics-commons-1.5.jar,它就可以解决问题.


Nic*_*tti 0

我找不到xmlgraphicsjar,但我确实找到了xmlgraphics-commons。这是你的意思吗?

从我上面链接的页面来看,它似乎不包含包org.apache.xmlgraphics.io,但它确实包含org.apache.xmlgraphics.util.io. 也许你指的是那个?