java - 在jrxml中导入自定义类并使用maven插件编译

标签 java maven jasper-reports maven-plugin jasper-plugin

我必须在 JasperReports 的 JRXML 文件中导入几个自定义 Java 类。
我可以使用

<import value="org.ga.jasper.sample.MyCustomClass"/>

这工作得很好,我能够运行这个 jrxml 并测试我的代码。

当我想使用 jasperreports-maven-plugin 将其预编译为 .jasper 文件时出现问题。

在进行构建时,它提示说它没有找到我的包,因此导入无效。

package org.ga.jasper.sample does not exist
import org.ga.jasper.sample.MyCustomClass;

仅供引用,我的 Java 代码和 .jrxml 在同一个 Maven 模块中,但在不同的文件夹中。

以下是我的插件标签中的代码

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>jasperreports-maven-plugin</artifactId>
    <executions>
        <execution>
            <goals>
                <goal>compile-reports</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <sourceDirectory>src/main/resources/jasper</sourceDirectory>
        <outputDirectory>${project.build.directory}/jasper</outputDirectory>
        <compiler>net.sf.jasperreports.engine.design.JRJavacCompiler</compiler>
    </configuration>
    <dependencies>
        <dependency>
            <groupId>net.sf.jasperreports</groupId>
            <artifactId>jasperreports</artifactId>
            <version>4.5.1</version>
        </dependency>
    </dependencies>
</plugin>

最佳答案

默认情况下,插件在生成资源阶段运行,在当前模块的类被编译之前。您可以将插件更改为在编译阶段运行。请参阅此处页面底部的注释:

另外,看看这个类似的问题:

关于java - 在jrxml中导入自定义类并使用maven插件编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19496129/

相关文章:

java - Activity 结束后线程会死吗?

java - Hibernate3 Maven 插件错误 : Could not create or find "MyReverseStrategy.java" with one argument delegate constructor?

java - 如何将 org.apache.commons.io.FilenameUtils 添加到 intellij 中的 Maven?

java - Jenkins - 在不同的机器上使用本地环境变量执行脚本

java - 制作无边框 JFrame

maven - 通过 Maven 运行时,Spring Profile 在 Logback 中不可用

java - 是否可以将 jasper 报告嵌入到 Python 应用程序中?

java - 如何删除 JasperReports 中行之间的额外空间?

java - 将 CSV 数据源从 java 程序传递到报告表

java - Spring Data Rest 资源处理失败