最近,我开始使用我的前同事设计的Java应用程序。执行某些操作后,应用程序将冻结,并且error.log文件显示以下内容:
Exception in thread "Thread-4" java.lang.OutOfMemoryError: Java heap space
at org.apache.poi.poifs.storage.BATBlock.<init>(BATBlock.java:57)
at org.apache.poi.poifs.storage.BATBlock.<init>(BATBlock.java:210)
at org.apache.poi.poifs.storage.BATBlock.createBATBlocks(BATBlock.java:87)
at org.apache.poi.poifs.storage.BlockAllocationTableWriter.simpleCreateBlocks(BlockAllocationTableWriter.java:150)
at org.apache.poi.poifs.storage.BlockAllocationTableWriter.createBlocks(BlockAllocationTableWriter.java:103)
at org.apache.poi.poifs.filesystem.POIFSFileSystem.writeFilesystem(POIFSFileSystem.java:221)
at org.apache.poi.hssf.usermodel.HSSFWorkbook.write(HSSFWorkbook.java:744)
at net.ndmystko.qa.QAJobReporter.writeWorkbook(QAJobReporter.java:478)
at net.ndmystko.qa.QAJobReporter.writeResults(QAJobReporter.java:458)
at net.ndmystko.qa.QAJobReporter.writeResults(QAJobReporter.java:402)
at net.ndmystko.qa.QA.displayEvolutionProgress(QA.java:1257)
at net.ndmystko.qa.QA.access$9(QA.java:1186)
at net.ndmystko.qa.QA$4.actionPerformed(QA.java:1176)
at net.ndmystko.analysis.evolution.Evolution.run(Evolution.java:191)
我已经读到我需要增加分配给应用程序的堆大小。但是,我不知道如何实现此目标,或者在哪里可以输入所需的代码。任何帮助将不胜感激。
注意:我没有编程经验。我从.bat文件运行该程序。
您可以使用以下Java命令行参数
-Xms: initial heap size
-Xmx: Maximum heap size
在运行应用程序时进行设置,例如
java -Xmx1024m YourClass
分配1024 MB
java -Xmx2g YourClass
分配2 GB
编辑:关于您的注释,java命令可能位于.bat文件中。因此,您应该打开它,找到java命令并在其中添加命令行参数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句