lo que yo hago es crear el JASPER desde iReport
y hago uso de este archivo ya compilado desde mi aplicación
Código Java:
Ver originalJasperReport report = (JasperReport) JRLoader.loadObject("report/report.jasper");
JasperPrint jasperPrint = JasperFillManager.fillReport(report,parametro,conn);
de esta forma evito compilar varias veces el archivo .JRXML