#!/bin/bash # Download JasperReports 6.21.0 and dependencies for JRXML-to-PNG rendering. # Run this once after cloning the repo. set -e BASE="https://repo1.maven.org/maven2" JARS=( "net/sf/jasperreports/jasperreports/6.21.0/jasperreports-6.21.0.jar" "commons-logging/commons-logging/1.3.5/commons-logging-1.3.5.jar" "org/apache/commons/commons-collections4/4.5.0/commons-collections4-4.5.0.jar" "commons-beanutils/commons-beanutils/1.10.1/commons-beanutils-1.10.1.jar" "org/apache/commons/commons-lang3/3.17.0/commons-lang3-3.17.0.jar" "commons-digester/commons-digester/2.1/commons-digester-2.1.jar" "com/lowagie/itext/2.1.7/itext-2.1.7.jar" "org/jfree/jfreechart/1.5.5/jfreechart-1.5.5.jar" "org/eclipse/jdt/ecj/3.38.0/ecj-3.38.0.jar" ) for jar in "${JARS[@]}"; do fname=$(basename "$jar") if [ -f "$fname" ]; then echo "SKIP: $fname (exists)" else echo "DOWNLOAD: $fname" curl -sL -o "$fname" "$BASE/$jar" fi done echo "" echo "All JARs ready. Compile with:" echo " javac -cp \"jasperreports-6.21.0.jar;...\" JrxmlRenderer.java" echo " java -cp \".;jasperreports-6.21.0.jar;...\" JrxmlRenderer input.jrxml output.png 2.0"