I am using iReport 4.0.0 for creating my reports. I have a subreport (abc.jrxml) which in turn refers to 2 other subreports (def.jrxml & xyz.jrxml). I first compiled def.jrxml and xyz.jrxml. When I compile def.jrxml and xyz.jrxml , they get compiled however in the repo folder (in my windows machine) , I see some arbitrary file names created (eg : file_1422419693062.jrxml , file_1422419693062.jasper , file_1422419760818.jrxml , file_1422419760818.jasper). When I try to compile abc.jrxml , it is returning an stating that it is unable to find def.jrxml and xyz.jrxml. It is because there is no file with name def.jrxml and xyz.jrxml created in the repo. When I change the file names to def.jrxml and xyz.jrxml manually , abx.jrxml gets compiled fine. Is there a way to ensure that file name that gets created in repo is same as file name that I see under respository navigator in ireport?