Proyecto JasperReports con Maven

De ChuWiki


Para poder usar JasperReports en nuestro proyecto Maven, basta con añadir la dependencia de la librería net.sf.jasperreports:jasperreports.

<dependency>
   <groupId>net.sf.jasperreports</groupId>
   <artifactId>jasperreports</artifactId>
   <version>6.20.6</version>
</dependency>

No todas las dependencias que tiene la librería jasperreports están en el repositorio central de maven. Con las versiones modernas de jasperreports no deberías tener problemas en este sentido. Los ficheros .pom de jasperreports ya tienen incluidos los repositorios que son necesarios y maven sabe ir a buscar ahí las dependencias que le faltan del repositorio central.

No obstante y solo como curiosidad, ponemos aquí los repositorios adicionales que el .pom de jasperreports library añade

  <repositories>
    <repository>
      <id>jaspersoft-third-party</id>
      <url>https://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts/</url>
    </repository>
    <repository>
      <id>jr-ce-snapshots</id>
      <name>JasperReports CE Snapshots</name>
      <url>https://jaspersoft.jfrog.io/jaspersoft/jr-ce-snapshots</url>
    </repository>
    <repository>
      <id>jr-ce-releases</id>
      <name>JasperReports CE Releases</name>
      <url>https://jaspersoft.jfrog.io/jaspersoft/jr-ce-releases</url>
    </repository>
  </repositories>

JasperReports y dependencia itext[editar]

Como hemos comentado, las versiones nuevas de jasperreports no presentan problemas de dependencias. Pero versiones antiguas presentaban el problema de que usaban una version de com.lowagie:itext que no está en el repositorio central y el fichero .pom de jasperreports no indicaba dónde buscarla. Si usas una versión antigua de jasperreports y no encuentra la dependencia de itext, tienes que añadir manualmente en tu pom.xml el siguiente repositorio

  <repositories>
    <repository>
      <id>jaspersoft-third-party</id>
      <url>https://jaspersoft.jfrog.io/jaspersoft/third-party-ce-artifacts/</url>
    </repository>
    ...
  </repositories>