【问题标题】:How to implement Dynamic Jasper as JBoss AS 7.2 Static Module?如何将动态 Jasper 实现为 JBoss AS 7.2 静态模块?
【发布时间】:2019-04-08 02:21:06
【问题描述】:

我已成功将 Jasper Report 实现为模块,但在实现 DynamicJasper 时多次失败。

我正在使用 JBoss AS 7.2、Linux CentOS 内核 2.6.32-431.el6.x86_64 和 Java 1.7 尝试此实现

下面是我创建的module.xml

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="other.tool.dynamicJasper">
  <resources>
    <resource-root path="DynamicJasper-5.0.11.jar"/>
  </resources>
  <dependencies>
    <module name="net.sf.jasper.reports"/>
    <module name="org.apache.commons.logging" />
    <module name="org.apache.commons.collections" />
    <module name="org.apache.commons.beanutils" />
    <module name="org.eclipse.jdt" export="true"/>
    <module name="com.lowagie.itext" />
    <module name="org.apache.poi" />
    <module name="org.apache.commons.digester" />
    <module name="org.jfree.chart" />
    <module name="javax.api"/>
    <system export="true">
      <paths>
        <path name="net/sf/jasper/reports"/>
      </paths>
    </system>
  </dependencies>
  <properties>
    <property name="net.sf.jasperreports.compiler.keep.java.file" value="true"/>
    <property name="net.sf.jasperreports.compiler.classpath" value="/usr/share/jboss-as-7-new/modules-agci/net/sf/jasper/reports/main/jasperreports-5.2.0.jar"/>
  </properties>
</module>

这是 Jasper 报告的 module.xml

<?xml version="1.0" encoding="UTF-8"?>
<module xmlns="urn:jboss:module:1.1" name="net.sf.jasper.reports">
  <resources>
    <resource-root path="jasperreports-5.2.0.jar"/>
  </resources>
  <dependencies>
    <module name="javax.api"/>
    <module name="org.apache.commons.logging"/>
    <module name="org.apache.commons.collections"/>
    <module name="org.apache.commons.digester"/>
    <module name="org.apache.commons.beanutils"/>
    <module name="org.eclipse.jdt" export="true"/>
    <module name="net.sf.jasper.reports.fonts" export="true"/>
    <module name="com.lowagie.itext"/>
    <module name="other.fonts.arial"/>
    <module name="other.fonts.times"/>
  </dependencies>
  <properties>
    <property name="net.sf.jasperreports.compiler.keep.java.file" value="true"/>
    <property name="net.sf.jasperreports.compiler.classpath" value="/usr/share/jboss-as-7-new/modules-agci/net/sf/jasper/reports/main/jasperreports-5.2.0.jar"/>
  </properties>
</module>

我总是得到的错误信息是

Errors were encountered when compiling report expressions class file:
/usr/share/jboss-as-7-new/DJR_9154_1554455135225_288300.java:4: error: package net.sf.jasperreports.engine does not exist

当我用top监控它时,我看到javac已经被执行了。

【问题讨论】:

    标签: jboss7.x dynamic-jasper jboss-modules


    【解决方案1】:

    最终,我成功地找到了答案。 根本原因是jasper-compiler-jdt-5.5.15.jar 与模块org.jboss.as.web 中的ecj-3.7.2.jar 产生冲突。

    解决办法是

    • 我合并了两个 JAR 并将其命名为 eclipse-combined-jdt-1.0.0.jar
    • 我修改了org.jboss.as.webmodule.xmlnet.sf.jasper.reports

    org.jboss.as.web的修订版是

    <resources>
      <resource-root path="jboss-as-web-7.2.0.Final.jar" />        
      <resource-root path="jbossweb-7.2.0.Final.jar" />        
      <resource-root path="eclipse-combined-jdt-1.0.0.jar" />
    </resources>
    

    net.sf.jasper.reports的修订版是

        <dependencies>
          <module name="javax.api"/>
          <module name="org.apache.commons.logging"/>
          <module name="org.apache.commons.collections"/>
          <module name="org.apache.commons.digester"/>
          <module name="org.apache.commons.beanutils"/>
          <module name="net.sf.jasper.reports.fonts" export="true"/>
          <module name="com.lowagie.itext"/>
          <module name="other.fonts.arial"/>
          <module name="other.fonts.times"/>
          <module name="org.jfree.chart"/>
          <module name="org.jboss.as.web">
            <imports>
              <include-set>
                <path name="org/eclipse/jdt/internal/compiler" />
              </include-set>
            </imports>
          </module>
        </dependencies>
    

    【讨论】:

      猜你喜欢
      • 2021-11-15
      • 1970-01-01
      • 1970-01-01
      • 2016-07-19
      • 1970-01-01
      • 2011-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多