Ошибка компиляции iReport (java .lang.String не может быть разрешена) в проекте Maven NetBeans - PullRequest
1 голос
/ 22 февраля 2020

Может быть, кто-нибудь может помочь мне решить эту проблему. Я пытаюсь интегрировать iReport в свой проект NetBeans и не могу решить следующую проблему. Когда я создаю новый отчет из «MyProject ---> New ---> Пустой отчет», он не компилируется и не показывает мне Предварительный просмотр из вкладки Designer отчета, он выдает мне следующую ошибку:

Исключения компиляции: com .jaspersoft.ireport.designer.compiler. ErrorsCollector@3d50d9ef net .sf.jasperreports.engine.JRException: при компиляции файла класса выражений отчета возникли ошибки: 1. Тип java .lang.String не может быть решена. На него косвенно ссылаются необходимые файлы .class / * ^ 1 ошибки в net .sf.jasperreports.engine.design.JRAbstractCompiler.compileReport (JRAbstractCompiler. java: 204) в com.jaspersoft.ireport.designer .compiler.IReportCompiler.run (IReportCompiler. java: 512) в org.openide.util.RequestProcessor $ Task.run (RequestProcessor. java: 1418) в org.netbeans.modules.openide.util.GlobalLookup.execute (GlobalLookup. java: 45) в org.openide.util.lookup.Lookups.executeWith (Lookups. java: 278) в org.openide.util.RequestProcessor $ Processor.run (RequestProcessor. java: 2033) )

В то же время все выглядит хорошо, если я создаю новый отчет из экрана приветствия iReport в NetBeans. Это мой файл Pom.

<?xml version="1.0" encoding="UTF-8"?>



<repositories>
    <repository>
        <id>unknown-jars-temp-repo</id>
        <name>A temporary repository created by NetBeans for libraries and jars it could not identify. Please replace the dependencies in this repository with correct ones and delete this repository.</name>
        <url>file:${project.basedir}/lib</url>
    </repository>
    <repository>
        <id>Jasper Reports</id>
        <url>http://jaspersoft.artifactoryonline.com/jaspersoft/jr-ce-releases</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.19</version>
        <exclusions>
            <exclusion>
                <groupId>com.google.protobuf</groupId>
                <artifactId>protobuf-java</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>mchange-commons-java</artifactId>
        <version>0.2.20</version>
    </dependency>
    <dependency>
        <groupId>com.mchange</groupId>
        <artifactId>c3p0</artifactId>
        <version>0.9.5.5</version>
    </dependency>
    <dependency>
        <groupId>com.toedter</groupId>
        <artifactId>jcalendar</artifactId>
        <version>1.4</version>
    </dependency>
    <dependency>
        <groupId>org.netbeans.external</groupId>
        <artifactId>AbsoluteLayout</artifactId>
        <version>RELEASE112</version>
    </dependency>
    <dependency> <!-- needed by jasperreports to build-->
        <groupId>com.lowagie</groupId>
        <artifactId>itext</artifactId>
        <version>2.1.7</version>
    </dependency>
    <!-- https://mvnrepository.com/artifact/net.sf.jasperreports/jasperreports -->
    <dependency>
        <groupId>net.sf.jasperreports</groupId>
        <artifactId>jasperreports</artifactId>
        <version>${jasperreports.version}</version>
    </dependency>
    <dependency>
        <groupId>net.sf.jasperreports</groupId>
        <artifactId>jasperreports-functions</artifactId>
        <version>${jasperreports.version}</version>
    </dependency>
    <dependency>
        <groupId>net.sf.jasperreports</groupId>
        <artifactId>jasperreports-fonts</artifactId>
        <version>6.11.0</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>1.7.30</version>
    </dependency>
    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
        <version>1.18.12</version>
    </dependency>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.13</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>xalan</groupId>
        <artifactId>xalan</artifactId>
        <version>2.7.2</version>
        <scope>test</scope>
    </dependency>
    <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy</artifactId>
        <version>2.5.9</version>
    </dependency>
    <dependency>
        <groupId>org.mariadb.jdbc</groupId>
        <artifactId>mariadb-java-client-jre7</artifactId>
        <version>1.6.1</version>
    </dependency>
</dependencies>

<pluginRepositories>
    <pluginRepository>
        <id>Jasper Reports</id>
        <url>http://jaspersoft.artifactoryonline.com/jaspersoft/jr-ce-releases</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </pluginRepository>
</pluginRepositories>

<properties>
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>13</maven.compiler.source>
    <maven.compiler.target>13</maven.compiler.target>
    <jasperreports.version>6.11.0</jasperreports.version>
</properties>

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
            <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.22.2</version>
            <configuration>
                <argLine>-Djava.awt.headless=true</argLine>
            </configuration>
        </plugin>
        </plugins>
    </pluginManagement>
    <plugins>
        <plugin>
            <artifactId>maven-resources-plugin</artifactId>
            <version>3.1.0</version>
            <executions>
                <execution>
                    <id>copy-resources</id>
                    <phase>validate</phase>
                    <goals>
                        <goal>copy-resources</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${basedir}/target/TechInfo</outputDirectory>
                        <resources>
                            <resource>
                                <directory>resources</directory>
                                <filtering>true</filtering>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
            </executions>
        </plugin>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
                <execution>
                    <id>copy-dependencies</id>
                    <phase>prepare-package</phase>
                    <goals>
                        <goal>copy-dependencies</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${project.build.directory}/lib</outputDirectory>
                        <overWriteReleases>false</overWriteReleases>
                        <overWriteSnapshots>false</overWriteSnapshots>
                        <overWriteIfNewer>true</overWriteIfNewer>
                    </configuration>
                </execution>
            </executions>
        </plugin> 
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jar-plugin</artifactId>
            <version>3.2.0</version>
            <configuration>
                <archive>
                    <manifest>
                        <addClasspath>true</addClasspath>
                        <classpathPrefix>lib/</classpathPrefix>
                        <mainClass>techinfo1.MainPage</mainClass>
                    </manifest>
                    <manifestEntries>
                        <Class-Path>.</Class-Path>
                    </manifestEntries>
                </archive>
                <finalName>TechInfo_1.0</finalName>
            </configuration>
        </plugin>  
        <plugin>
            <groupId>com.alexnederlof</groupId>
            <artifactId>jasperreports-plugin</artifactId>
            <version>2.6</version>
            <configuration>
                <sourceDirectory>${project.build.sourceDirectory}/../resources</sourceDirectory>
                <outputDirectory>${project.build.outputDirectory}/jrxml</outputDirectory>
                <verbose>true</verbose>
            </configuration>
            <dependencies>
                <dependency>
                    <groupId>net.sf.jasperreports</groupId>
                    <artifactId>jasperreports-functions</artifactId>
                    <version>6.11.0</version>
                </dependency>
                <dependency>
                    <groupId>net.sf.jasperreports</groupId>
                    <artifactId>jasperreports</artifactId>
                    <version>6.11.0</version>
                </dependency>
            </dependencies>
            <executions>
                <execution>
                    <phase>process-resources</phase>
                    <goals>
                        <goal>jasper</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

    </plugins>            
</build>

Я также снизил JRE с 8 до JRE 7. Добавил целую кучу файлов в библиотеки для iReport. От запроса отчета это дает мне ту же ошибку. Он подключается к базе данных, но не может читать из нее.

Report query error

Есть идеи, что мне не хватает в моем проекте?

Заранее спасибо.

...