亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Apache poi XSSFSheet.write() 未完成

Apache poi XSSFSheet.write() 未完成

一只斗牛犬 2022-06-15 15:11:14
我正在使用 Java 8 運行 apache poi 4.0.0 并嘗試用數據填充模板并將其保存到輸出流。這會在將工作簿寫入目標路徑時導致問題,但僅在以調試模式/在其他計算機上運行時才會出現。模板文件在填充數據之前的大小為 7.5 MB我對其進行了調試,發現方法調用worksheet.save(out, xmlOptions);在XSSFSheet某個時候停止了。調試值out:class:              org.apache.poi.openxml4j.opc.internal.MemoryPackagePartOutputStreampart:               Name: /xl/worksheets/sheet10.xml - Content Type: application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xmlpart-relationships: 3 relationship(s) = [/xl/worksheets/_rels/sheet10.xml.rels,/xl/worksheets/sheet10.xml,/xl/worksheets/_rels/sheet10.xml.rels]調試值xmlOptions:SAVE_USE_DEFAULT_NAMESPACE=nullCHARACTER_ENCODING=UTF-8SAVE_OUTER=nullSAVE_SUGGESTED_PREFIXES={http://schemas.openxmlformats.org/drawingml/2006/chart=c, http://schemas.openxmlformats.org/wordprocessingml/2006/main=w, http://schemas.microsoft.com/office/word/2006/wordml=wne, http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes=vt, http://schemas.openxmlformats.org/presentationml/2006/main=p, urn:schemas-microsoft-com:office:word=w10, urn:schemas-microsoft-com:vml=v, http://schemas.openxmlformats.org/drawingml/2006/main=a, http://schemas.openxmlformats.org/officeDocument/2006/math=m, http://schemas.openxmlformats.org/officeDocument/2006/relationships=r, urn:schemas-microsoft-com:office:excel=x, urn:schemas-microsoft-com:office:office=o, http://schemas.openxmlformats.org/markup-compatibility/2006=ve, http://schemas.openxmlformats.org/drawingml/2006/wordprocessingDrawing=wp}ENTITY_EXPANSION_LIMIT=1SAVE_AGGRESSIVE_NAMESPACES=nullSAVE_SYNTHETIC_DOCUMENT_ELEMENT={http://schemas.openxmlformats.org/spreadsheetml/2006/main}worksheet再深入一點,很明顯它在這種方法上失敗了:public void save(OutputStream os, XmlOptions options) throws IOException    { XmlCursor cur = newCursorForce(); try { cur.save(os, makeInnerOptions(options)); } finally { cur.dispose(); } }在XmlObjectBase,特別是在newCursorForce()。這種方法在所有其他機器上以及在調試模式下的機器上失敗的原因是什么?如果正常執行,整個應用程序運行流暢。
查看完整描述

1 回答

?
侃侃無極

TA貢獻2051條經驗 獲得超10個贊

正如我在第二次編輯中已經得出的結論,這確實是一個內存問題。使用作為 VM 參數執行應用程序-Xms1G -Xmx4G,應用程序沒有引起任何問題,并且運行時非常接近我在測試時得到的



查看完整回答
反對 回復 2022-06-15
  • 1 回答
  • 0 關注
  • 221 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號