当前位置: 首页 > 知识库问答 >
问题:

使用Maven编译JRXML时ClassNotFoundException

云开诚
2023-03-14

我在我的JRXML中使用我的应用程序A的一些对象,如下所示:

<jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="ResportTest" pageWidth="842" pageHeight="595" orientation="Landscape" whenNoDataType="AllSectionsNoDetail" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
<property name="ireport.zoom" value="1.5394743546921226"/>
<property name="ireport.x" value="0"/>
<property name="ireport.y" value="0"/>
<import value="com.test.app.EnumOne"/>
<import value="com.test.app.Test1DTO"/>
<import value="com.test.app.Test1Sub1DTO"/>
<import value="com.test.app.Test1Sub2DTO"/>
<import value="com.test.app.Test2DTO"/>
<import value="com.test.app.EnumTwo"/>

使用iReport,我已经将我的目标/类目录添加到类路径,每个想法都可以。

现在,当我尝试用maven(mvn clean install)编译JRXML时,我遇到了一个错误:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.949 s
[INFO] Finished at: 2015-04-10T08:17:26+01:00
[INFO] Final Memory: 39M/112M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.codehaus.mojo:jasperreports-maven-plugin:1.0-beta-1:compile-reports (default) on project projectOne: Error co
mpiling report design : C:\ws\projectOne\src\main\resources\jasper\jrxml\ReportTest.jrxml: Error compiling report d
esign : C:\ws\projectOne\src\main\resources\jasper\jrxml\ReportTest.jrxml : Report design not valid :
[ERROR] 1. java.lang.ClassNotFoundException: com.test.app.EnumOne
[ERROR] 2. java.lang.ClassNotFoundException: com.test.app.EnumTwo
[ERROR] 3. java.lang.ClassNotFoundException: com.test.app.Test2DTO

当我的构建失败时,maven已经编译了目标/类中的所有类。我不明白为什么maven找不到EnumOne、EnumTwo和Test2DTO,而它却能找到另一个。

这是我的pom。jasper的xml:

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

共有1个答案

戚正业
2023-03-14

好的,我刚刚找到了解决方案。Maven将依赖项jasperreports-maven-plugin与版本1.0-beta-1一起使用。我将依赖项升级到1.0-beta-2,现在可以使用了!

 类似资料:
  • 我试图用maven在heroku simple servlet上上传。在本地,我的servlet工作正常,但当我使用: 我得到“构建失败”的错误消息: 我在系统变量中将所有内容都更改为Java 1.7,maven运行的是Java 1.7,javac版本是1.7? 我在这里错过了什么吗? 编辑:我的JAVA_HOME和错误截图

  • 问题内容: 我有一个当前可与Java 6一起使用并编译时间编织的项目。我们使用以下pom启用spring方面以及我们自己的方面: 我尝试了各种配置,但是不能使其与Java 7一起使用。如果有人可以共享工作的pom或导致它,那将是很好的。 问题答案: 升级到Aspectjtools的1.7.0版后,它可以正常工作。另外,您需要将版本参数传递给编译器(使用该参数会导致问题)。如果有人需要更多详细信息,

  • 由于IntelliJ,我发现需要将以下选项传递给:

  • 问题内容: 在构建战争文件时,我正在将一组罐子从某个位置复制到战争中的文件夹中。虽然文件确实会被复制,但是我认为它们已损坏,因为在战争之外被带出的jar的相同类文件会使用调试器打开,而从war文件中取出后不会打开。 这是我的战争pom.xml的一部分,我在其中复制了罐子 SomeSourceDirectory 有一些jar和其他文件结果是:myWar / somefolder / a.jar,但是

  • 本文向大家介绍使用maven编译Java项目实例,包括了使用maven编译Java项目实例的使用技巧和注意事项,需要的朋友参考一下 综述 本文演示了用Maven编译Java项目 需要 时间:15分钟 文本编辑器或者IDE JDK 6 或者更高版本 创建项目 本例主要为了展示Maven,所以Java的项目力求简单。 创建项目结构 选 择一个项目目录,在 *nix系统上使用下面语句 mkdir -p

  • 我已将Google Guava Project(https://github.com/google/guava)克隆到我的本地Mac计算机 我事先运行了mvn验证,没有任何问题。 当运行命令mvn clean然后运行mvn软件包时,我遇到了这个错误。 [错误]未能在 project guava-tests 上执行 goal org.apache.maven.plugins:maven-compil