Question

En fourmi, comment puis-je compiler .jrxml fichier pour obtenir un .jasper ?

Était-ce utile?

La solution

Il y a trois façons de compiler jrxml à jaspe.

  1. Vous pouvez compilons directement via le bouton de compilation (logo marteau) sur iReport concepteur.

  2. Vous pouvez utiliser fourmi pour compiler comme indiqué dans la section Ant Compile Sample.

    <target name="compile1"> 
      <mkdir dir="./build/reports"/> 
      <jrc 
        srcdir="./reports"
        destdir="./build/reports"
        tempdir="./build/reports"
        keepjava="true"
        xmlvalidation="true">
       <classpath refid="runClasspath"/>
       <include name="**/*.jrxml"/>
      </jrc>
    </target>
    

    Voici la tâche de compilation du rapport sur mon projet actuel.

    text alt

    Daniel Rikowski :

  3. Vous pouvez également utiliser la JasperCompileManager classe pour compiler à partir de votre code java.

    JasperCompileManager.compileReportToFile(
                    "our_jasper_template.jrxml", // the path to the jrxml file to compile
                    "our_compiled_template.jasper"); // the path and name we want to save the compiled file to
    

Autres conseils

Pour ceux qui viennent sur cette question qui utilise Jaspersoft studio (qui, je pense, est le remplacement iReports, il est tout à fait similaire, toujours freeware, juste basé sur Eclipse), recherchez l'icône « Rapport Compile » au-dessus de la zone d'édition de votre fichier .jrxml. Son icône, d'abord dans cette ligne d'icônes, est un fichier avec des nombres binaires sur (au moins dans la version 5.6.2): ??

Jaspersoft Studio - Rapport de la compilation

En cliquant sur cette icône pour générer le fichier .jasper dans le même répertoire que le fichier .jrxml.

avec Maven il est automatique:

<plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>jasperreports-maven-plugin</artifactId>
        <configuration>
        <outputDirectory>target/${project.artifactId}/WEB-INF/reports</outputDirectory>
    </configuration>
        <executions>
            <execution>
                <phase>prepare-package</phase>
                <inherited>false</inherited>
                <goals>
                    <goal>compile-reports</goal>
                </goals>
            </execution>
        </executions>
        <dependencies>
    <dependency>
        <groupId>net.sf.jasperreports</groupId>
        <artifactId>jasperreports</artifactId>
        <version>3.7.6</version> 
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.16</version>
        <type>jar</type>
    </dependency>
    </dependencies>

J'utilise iReport 2.0.2 pour générer le fichier jaspe.

Je ne l'ai pas trouvé le logo de marteau, mais j'ai un create > compile de menu dans la barre de menu qui créent le fichier jaspe dans les fichiers du programme iReport dossier:

IReport journaux: "Compilation vers le fichier ... \ SalesOrderItemsSubreportA4.jasper -> C:. \ Program Files \ JasperSoft \ iReport-2.0.2 \ SalesOrderItemsSubreportA4.java"

Utilisation de Designer iReport 5.6.0, si vous souhaitez compiler plusieurs fichiers JRXML sans prévisualisation - aller à Outils -> Massive outil traitement. Sélectionnez élaboration type comme « Fichiers de compilation », sélectionnez le dossier dans lequel tous vos rapports de JRXML sont stockés, et les compiler dans un lot.

Si vous utilisez iReport, vous pouvez facilement le faire.

  1. Lorsque vous cliquez sur Aperçu, il compilera automatiquement.
  2. Il y a une option pour le rendre complie. Vous pouvez compiler en sélectionnant la page puis cliquez à droite, vous obtiendrez l'option de compilation.

En éclipse,

  • Jaspersoft studio pour Eclipse.
  • clic droit sur le fichier .jrxml et sélectionnez Open with JasperReports Book Editor
  • Ouvrez l'onglet Design pour le fichier .jrxml.
  • En haut de la fenêtre, vous pouvez voir l'icône Compile Report.

Utilisation de la version 5.1.0:

Il suffit de cliquer sur l'aperçu et il va créer un YourReportName.jasper pour vous dans le même répertoire de travail.

  1. Ouvrez votre fichier .jrxml dans iReport Designer.
  2. Ouvrir l'inspecteur Rapport (Fenêtre -> rapport de l'inspecteur).
  3. Cliquez droit sur votre nom de rapport sur le dessus de l'inspecteur, puis cliquez sur « Rapport Compile ».

Vous pouvez également prévisualiser votre rapport il est automatiquement compilé.

 **A full example of POM file**.

Command to Build All **Jrxml** to **Jasper File** in maven
If you used eclipse then right click on the project and Run as maven Build and add goals antrun:run@compile-jasper-reports 


compile-jasper-reports is the id you gave in the pom file.
**<id>compile-jasper-reports</id>**




<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.test.jasper</groupId>
  <artifactId>testJasper</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>TestJasper</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

  <dependencies>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
    <dependency>
        <groupId>net.sf.jasperreports</groupId>
        <artifactId>jasperreports</artifactId>
        <version>6.3.0</version>
    </dependency>
    <dependency>
        <groupId>net.sf.jasperreports</groupId>
        <artifactId>jasperreports-fonts</artifactId>
        <version>6.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>2.4.6</version>
    </dependency>
    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>itextpdf</artifactId>
        <version>5.5.6</version>
    </dependency>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>


  </dependencies>
    <build>
    <pluginManagement>
    <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.5</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>       
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>1.8</version>
            <executions>
                <execution>
                    <id>compile-jasper-reports</id>
                    <goals>
                        <goal>run</goal>
                    </goals>
                    <phase>generate-sources</phase>
                    <configuration>
                        <target>
                            <echo message="Start compile of jasper reports" />
                            <mkdir dir="${project.build.directory}/classes/reports"/>
                            <echo message="${basedir}/src/main/resources/jasper/jasperreports" />
                            <taskdef name="jrc" classname="net.sf.jasperreports.ant.JRAntCompileTask"
                                classpathref="maven.compile.classpath" />
                                <jrc srcdir="${basedir}/src/main/resources/jasper/jasperreports" destdir="${basedir}/src/main/resources/jasper/jasperclassfile"
                                  xmlvalidation="true">
                                <classpath refid="maven.compile.classpath"/>
                                <include name="**/*.jrxml" />
                            </jrc>
                        </target>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
    </pluginManagement>
</build>
</project>
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top