首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何修正"JRException:编译报告java源文件错误“错误?

如何修正"JRException:编译报告java源文件错误“错误?
EN

Stack Overflow用户
提问于 2020-02-28 09:26:07
回答 1查看 1.1K关注 0票数 0

在搜索之后,我找到了一些东西,可以将XML作为输入,并将其设置为PDF,但是我得到了这个错误。任何帮助都将不胜感激。

代码语言:javascript
运行
复制
@Service
public class PDFGenerationDemo implements Serializable {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    public static final String RESOURCES_DIR;
    public static final String OUTPUT_DIR;

    static {
        RESOURCES_DIR = "src//main//resources//";
        OUTPUT_DIR = "src//main//resources//output//";
    }

    public void makeHTML() throws IOException, TemplateException, JRException {
        File file = ResourceUtils.getFile("classpath:jasper.jrxml");
        JasperReport jReport=JasperCompileManager.compileReport(file.getAbsolutePath());
        Map<String, Object> params = new HashMap<String, Object>();
        Document document = 
        JRXmlUtils.parse(JRLoader.getLocationInputStream(RESOURCES_DIR+"sample.xml"));
        params.put(JRXPathQueryExecuterFactory.PARAMETER_XML_DATA_DOCUMENT, document);
        params.put(JRXPathQueryExecuterFactory.XML_DATE_PATTERN, "yyyy-MM-dd");
        params.put(JRXPathQueryExecuterFactory.XML_NUMBER_PATTERN, "#,##0.##");
        params.put(JRXPathQueryExecuterFactory.XML_LOCALE, Locale.ENGLISH);
        params.put(JRParameter.REPORT_LOCALE, Locale.US);
        JasperPrint jPrint = JasperFillManager.fillReport(jReport, params);
        JasperExportManager.exportReportToPdfFile(jPrint,OUTPUT_DIR+"CustomersReport.pdf");
      }
}

误差

代码语言:javascript
运行
复制
2020-02-28 14:39:44 [http-nio-9005-exec-2] DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolving exception from handler [public void com.imoveinvest.propertyuploader.controller.SaveOrValidateValuationReport.htmlCall() throws java.io.IOException,freemarker.template.TemplateException,net.sf.jasperreports.engine.JRException]: net.sf.jasperreports.engine.JRException: Error compiling report java source files: D:\SanjayS\ImoveHome\property-uploade-service\Blank_A4_1582880983002_121813.java .
2020-02-28 14:39:44 [http-nio-9005-exec-2] DEBUG o.s.w.s.m.a.ResponseStatusExceptionResolver - Resolving exception from handler [public void com.imoveinvest.propertyuploader.controller.SaveOrValidateValuationReport.htmlCall() throws java.io.IOException,freemarker.template.TemplateException,net.sf.jasperreports.engine.JRException]: net.sf.jasperreports.engine.JRException: Error compiling report java source files: D:\SanjayS\ImoveHome\property-uploade-service\Blank_A4_1582880983002_121813.java .
2020-02-28 14:39:44 [http-nio-9005-exec-2] DEBUG o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolving exception from handler [public void com.imoveinvest.propertyuploader.controller.SaveOrValidateValuationReport.htmlCall() throws java.io.IOException,freemarker.template.TemplateException,net.sf.jasperreports.engine.JRException]: net.sf.jasperreports.engine.JRException: Error compiling report java source files: D:\SanjayS\ImoveHome\property-uploade-service\Blank_A4_1582880983002_121813.java .
2020-02-28 14:39:44 [http-nio-9005-exec-2] DEBUG o.s.web.servlet.DispatcherServlet - Could not complete request
net.sf.jasperreports.engine.JRException: Error compiling report java source files: D:\SanjayS\ImoveHome\property-uploade-service\Blank_A4_1582880983002_121813.java .
    Caused by: java.io.IOException: Cannot run program "javac": CreateProcess error=2, The system cannot find the file specified
    at java.lang.ProcessBuilder.start(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)
    at java.lang.Runtime.exec(Unknown Source)
    at net.sf.jasperreports.engine.design.JRJavacCompiler.compileClasses(JRJavacCompiler.java:63)
    ... 49 common frames omitted

,我一直在为这件事苦苦挣扎,请帮帮忙。

EN

回答 1

Stack Overflow用户

发布于 2020-02-28 10:02:55

当您打开命令行shell并键入"javac“时会发生什么?如果没有找到程序"javac“,它会失败吗?

看起来jasper报告正在生成Java代码,然后尝试编译它(javac是Java编译器),但是它找不到编译器。这可能是因为它没有安装,也可能是因为它不在您的“路径”上。细节将取决于您正在使用的操作系统。但希望这提供了一个线索,什么是出了问题,并帮助你解决它。

(实际上,仔细观察诊断结果就会发现,您在Windows上,这意味着我将无法帮助您提供更多的细节。)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60448702

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档