Building JasperReports Server Source Code
|
This document describes how to build from a command-line shell in Linux or Windows. It does not address the process of building within an IDE (Integrated Development Environment) such as Eclipse or IntelliJ. |
Introduction to Buildomatic Source Build Scripts
The JasperReports Server source code comes with a set of configuration and build scripts based on Apache Ant known as the buildomatic scripts. You will find these scripts in the following directory:
The buildomatic scripts automate most aspects of configuring, building, and deploying the source code. Apache Ant is bundled into the source code distribution to simplify the setup.
Downloading and Unpacking JasperReports Server Source Code
Downloading the Source Archive
Download the source code package zip for the commercial version of JasperReports Server from js-jrs_9.0.0_src.zip
.
For access to the site, contact technical support or your sales representative.
Unpacking the Source Archive
Unpack the js-jrs_9.0.0_src.zip
file to a directory location, such as C:\
or /home/<user>
. The resulting location is referred to as <js-src>
in this document.
Windows: |
<js-src> example is C:\JasperReports-Server-9.0.0-src |
Linux: |
<js-src> example is /home/<user>/JasperReports-Server-9.0.0-src |
|
The source build may use paths that exceed the 260-character limit on Windows. To extract the package, Enable NTFS long paths (Windows 10 only) or use a third-party file archiver such as 7-Zip. |
Source Code Package Structure
After you have unpacked the zip file, the folder directory has the following structure:
Directory or file |
Description |
<js-src>/apache-ant |
Bundled version of Apache Ant build tool |
<js-src>/jasperserver |
JasperReports Server open source code for core functionality |
<js-src>/jasperserver-pro |
JasperReports Server source code for commercial functionality |
<js-src>/jasperserver-repo |
Dependent jar files (not readily available publicly) |
<js-src>/jasperserver-ui | JasperReports Server source code for UI |
|
The repo-path variable can be set to point to the location of the js-jrs_9.0.0_repo.zip / ./repository directory. |
Check Apache Ant
The Apache Ant tool is bundled (pre-integrated) into the source code distribution package. So you do not need to download or install Ant to run the buildomatic scripts. For example:
cd <js-src>/jasperserver/buildomatic
js-ant help
or
../js-ant help
(Linux)
If you do not use the bundled version of Apache Ant, we recommend version 1.9.4 or later. Versions earlier than 1.8.1 are not compatible.
Configuring the Buildomatic Properties
The buildomatic scripts are found at the following location:
<js-src>/jasperserver/buildomatic
Use the buildomatic scripts to build the source code and configure settings for a supported application server and database. The file for configuring these settings is default_master.properties. The source distribution includes a properties file for each type of database. Add your specific settings to this file and rename it to:
default_master.properties
|
When specifying paths with Apache Ant and Java in Windows, a single forward slash (/) normally works the same as “escaped” double backlashes (\\). |
PostgreSQL
- Procedure
- Go to the buildomatic directory in the source distribution:
cd <js-src>/jasperserver/buildomatic
- Copy the PostgreSQL specific file to the current directory and change its name to
default_master.properties as shown below:Windows:
copy sample_conf\postgresql_master.properties default_master.properties
Linux:
cp sample_conf/postgresql_master.properties default_master.properties
- Edit the new default_master.properties file and set the following properties for your local environment:
Property
Examples
appServerType
appServerType=tomcat [jboss-eap-7, wildfly, skipAppServerCheck] appServerDir
appServerDir = C:\\Program Files\\Apache Software Foundation\\Tomcat 9.0 appServerDir = /home/<user>/apache-tomcat-9.0 dbHost
dbHost=localhost dbUsername
dbUsername=postgres dbPassword
dbPassword=postgres maven
maven = C:\\apache-maven-3.9\\bin\\mvn.cmd
maven = /home/<user>/apache-maven-3.9/bin/mvn
js-path
js-path = C:\\JasperReports-Server-9.0.0-src\\jasperserver
js-path = /home/<user>/JasperReports-Server-9.0.0-src/jasperserver
js-pro-path
js-pro-path = C:\\JasperReports-Server-9.0.0-src\\jasperserver-pro
js-pro-path = /home/<user>/JasperReports-Server-9.0.0-src/jasperserver-projs-pro-path =
maven.build.type
maven.build.type=repo
repo-path
repo-path = C:\\JasperReports-Server-9.0.0\\jasperserver-repo
repo-path = /home/<user>/JasperReports-Server-9.0.0-src/jasperserver-repo
chrome.path
chrome.path = C:/Program Files (x86)/Google/Chrome/Application/chrome.exe
chrome.path = /usr/bin/google-chrome
MySQL
- Procedure
- Go to the buildomatic directory in the source distribution:
cd <js-src>/jasperserver/buildomatic
- Copy the MySQL specific file to the current directory and change its name to
default_master.properties
:Windows:
copy sample_conf\mysql_master.properties default_master.properties
Linux:
cp sample_conf/mysql_master.properties default_master.properties
- Edit the new
default_master.properties
file and set the following properties to your local environment:Property
Examples
appServerType
appServerType=tomcat [jboss-eap-7, wildfly, skipAppServerCheck] appServerDir
appServerDir = C:\\Program Files\\Apache Software Foundation\\Tomcat 9.0 appServerDir = /home/<user>/apache-tomcat-9.0 dbHost
dbHost = localhost
dbUsername
dbUsername = root
dbPassword
dbPassword = password
maven
maven = C:\\apache-maven-3.9\\bin\\mvn.cmd
maven = /home/<user>/apache-3.9/bin/mvn
js-path
js-path = C:\\JasperReports-Server-9.0.0-src\\jasperserver
js-path = /home/<user>/JasperReports-Server-9.0.0-src/jasperserver
js-pro-path
js-pro-path = C:\\JasperReports-Server-9.0.0-src\\jasperserver-pro
js-pro-path = /home/<user>/JasperReports-Server-9.0.0-src/jasperserver-pro
maven.build.type
maven.build.type=repo
repo-path
repo-path = C:\\JasperReports-Server-9.0.0-src\\jasperserver-repo
repo-path = /home/<user>/JasperReports-Server-9.0.0-src/jasperserver-repo
chrome.path
chrome.path = C:/Program Files (x86)/Google/Chrome/Application/chrome.exe
chrome.path = /usr/bin/google-chrome
Additional Databases
For default_master.properties
configurations for other databases, please see Source Build Setup for Other Databases.
Build Source Code
Now that you have set up your default_master.properties
file, you can build the source code.
To build JasperReports Server
- Procedure
- Set up the
default_master.properties
file for your environment (as described above). - Start the database server.
- Stop the application server.
- Run the commands shown below:
After running each Ant target in Commands for Building JasperReports Server, look for the message BUILD SUCCESSFUL.
Commands |
Description |
|
|
js-ant clean-config
|
(Optional) Clears the |
js-ant gen-config
|
(Optional) Rebuilds the buildomatic/build_conf/default directory. |
js-ant add-jdbc-driver
|
Used for loading the databases |
|
Builds the community source code |
|
Builds the commercial source code |
|
(Optional) Creates and loads the |
|
(Optional) Deploys the jasperserver |
js-ant deploy-jrws
|
(Optional) Deploys only JasperReports Web Studio apps in the configured app path in default_master.properties . |
|
Installing JasperReports Server automatically generates encryption keys that reside on the file system. These keys are stored in a dedicated Jaspersoft keystore. Make sure that this keystore is properly secured and backed up, as described in the JasperReports Server Security Guide. |
Set Java Options
JasperReports Server needs Java memory options that are larger than the standard defaults. For information about additional Java options, see Setting Java JVM Options.
Set Increased JAVA_OPTS Settings
JasperReports Server needs greater heap settings for all functionality to operate. For testing your deployed JasperServer, set your JAVA_OPTS to the same default values described in the JasperReports Server Installation Guide. The following shows the minimum recommended settings; you may need to increase these according to your usage.
JVM Options on Linux and Mac OSX (64 bit) |
|
Options for all app servers |
export JAVA_OPTS="$JAVA_OPTS -Xms2048m -Xmx4096m -Xss2m" |
JVM Options on Windows (64 bit) |
|
Options for all app servers |
set JAVA_OPTS=%JAVA_OPTS% -Xms2048m -Xmx4096m -Xss2m |
Add these settings to your application server startup script:
Apache Tomcat: |
|
(.bat for Windows) |
JBoss: |
|
(.bat for Windows) |
For details on setting Java memory options, please see Setting Java JVM Options.
Put jasperserver.license in Place
JasperReports Server Commercial edition requires a license to run. An evaluation license is provided in the source code zip download package. You can use this evaluation license to get started and then replace it with one you request
JasperReports Server looks for the license file in the home directory of the user running the application server, so copy the license to that location. You will find the license in the root of the source package:
<js-src>/jasperserver.license
For more information on license configuration, please see Configuring the JasperReports Server License File.
Copy jasperserver.license
to the appropriate folder listed in the table below.
Operating System |
|
Linux |
/home/<user>/ |
Mac OSX |
/Users/<user>/ |
Windows 7 using the bundled Tomcat |
C:\Users\<user>\ |
Windows 7 using an existing Tomcat Windows service |
C:\ |
Starting JasperReports Server
You can now start your application server. Your database should already be running.
Logging into JasperReports Server
You can now log into JasperReports Server through a web browser:
Enter the login URL with the default port number:
http://localhost:8080/jasperserver
Log into JasperReports Server as
User ID: superuser
Password: superuser
User ID: jasperadmin
Password: jasperadmin
If you are unable to log in or have other problems, see Troubleshooting, or the JasperReports Server Installation Guide.
JasperReports Server Log Files
If you encounter any startup or runtime errors, you can check the application server log files. For Apache Tomcat, you will find the log file here:
<tomcat>/logs/catalina.out
Also check the jasperserver.log
file. You can increase the debug output level by editing the log4j.properties
file.
The JasperReports Server runtime log is here:
<tomcat>/webapps//WEB-INF/logs/jasperserver.log
The log4j.properties
file is here:
<tomcat>/webapps//WEB-INF/log4j.properties
Recommended Comments
There are no comments to display.