JasperReports is an open-source Java class library designed to aid developers with the task of adding reporting capabilities to Java applications. Since it is not a standalone tool, it cannot be installed on its own. Instead, it is embedded into Java applications by including its library in the application's CLASSPATH. JasperReports is a Java class library, and is not meant for end users, but rather is targeted towards Java developers who need to add reporting capabilities to their applications.
Although JasperReports is primarily used to add reporting capabilities to web-based applications via the Servlet API, it has absolutely no dependencies on the Servlet API or any other Java EE library. It is, therefore, by no means limited to web applications. There is nothing stopping us from creating standalone desktop or command-line Java applications to generate reports with JasperReports. After all, JasperReports is nothing but a Java class library providing an API to facilitate the ability to generate reports from any kind of Java application.
JasperReports requires a Java Development Kit (JDK) 1.3 or newer in order to successfully compile applications incorporating the JasperReports Java class library, and a Java Runtime Environment 1.3 or newer to successfully execute these applications. Older versions of JasperReports required a JDK to successfully execute JasperReports applications (strictly speaking, JasperReports required tools.jar
to be in the CLASSPATH, and tools.jar
is included in the JDK, not the JRE). However, from version 0.6.4, JasperReports is bundled with the Eclipse Java Development Tools (JDT) compiler, and no longer needs a JDK to execute deployed applications. Examples in this book are developed using JDK 1.5, but should compile and execute successfully with any JDK or JRE supported by JasperReports.