问题描述
我用 Java 用 sax 库制作了 XML 文件。
StreamResult out = new StreamResult(new File("/home/aka/out.xml"));
但是当我在 maven 项目上这样写并将项目构建为 Jenkins 插件时,
我认为它不能像我预期的那样存储 xml 文件。
我搜索过网站,大多数人都使用 tranformer.transform(source,out)
但是,源类型是针对 DOM 的。我使用萨克斯库。
有没有其他办法?
请告诉我
解决方法
您可以尝试:将输出数据存储在 ByteArrayOutputStream
中,并在所有处理完成后才将其保存到文件中:
ByteArrayOutputStream os = new ByteArrayOutputStream();
StreamResult out = new StreamResult(os);
// do the xml processing
System.out.println("XML processing done,saving");
Files.write(Paths.get("/home/aka/out.xml"),os.toByteArray());
System.out.println("XML saved");
包含两个 System.out.println()
语句将有助于找出代码卡住的地方。