Java 图像不会以apache fop生成的PDF格式显示

Java 图像不会以apache fop生成的PDF格式显示,java,eclipse,pdf,jar,apache-fop,Java,Eclipse,Pdf,Jar,Apache Fop,我正在使用ApacheFop库(v2.2)生成PDF文件。如果我从EclipseIDE运行应用程序,所有的运行都没有问题,但是如果我从EclipseIDE生成JAR,并设置库处理以将所需的库提取到生成的JAR中,然后我将运行JAR,它将生成没有图像的PDF文件(文本如预期的那样可见)。首先,我认为这是由无效的文件路径引起的,但是如果我直接在XSL中使用base64编码,图像仍然是不可见的。如果我在生成JAR时将库处理设置为将所需的库打包到生成的JAR中,那么一切都正常运行,但运行速度太慢。你知道

我正在使用ApacheFop库(v2.2)生成PDF文件。如果我从EclipseIDE运行应用程序,所有的运行都没有问题,但是如果我从EclipseIDE生成JAR,并设置库处理以将所需的库提取到生成的JAR中,然后我将运行JAR,它将生成没有图像的PDF文件(文本如预期的那样可见)。首先,我认为这是由无效的文件路径引起的,但是如果我直接在XSL中使用base64编码,图像仍然是不可见的。如果我在生成JAR时将库处理设置为将所需的库打包到生成的JAR中,那么一切都正常运行,但运行速度太慢。你知道这是什么原因吗?

我发现了以下问题:

  • 我使用的是java.util.logging.Logger,没有看到apache fop中使用的记录器的结果。我在没有此记录器的情况下构建了简单的测试应用程序,并出现以下错误:
  • '严重:图像不可用。URI:image_name.jpg。原因: org.apache.xmlgraphics.image.loader.ImageException:文件格式为 不支持。未找到image_name.jpg的ImagePreload程序(无上下文 信息可用)'

  • 说明如何使用maven解决此问题。我使用的是外部jar,所以我只改变了在Eclipse和eveything中的javabuildpath菜单中添加jar的顺序

  • 可能的重复-顺便说一句,我为客户使用了FOP-它非常酷!如果您需要进一步细化/排除故障,我可以尝试帮助您!事后来看,这个链接提供了一些很好的信息,但并没有真正回答你的问题。您可以始终将应用程序所需的JAR放在lib目录中,以便可以访问它们,这会减慢您的构建/部署时间?感谢您的响应,我构建了一个简单的示例,但出现了错误“严重:映像不可用”。URI:template.JPG。原因:org.apache.xmlgraphics.image.loader.ImageException:不支持该文件格式。找不到template.JPG的ImagePreload(没有可用的上下文信息)。所以我认为这个问题已经在这里说明了,我将在晚上尝试解决它,并更新当前的进度。很高兴你把它弄明白了,迈克尔!