使用Plantuml GUI时出现Stackoverflow错误

时间:2019-02-17 18:12:05

标签: plantuml

我一直在使用以下命令使用Plantuml gui。

java -jar plantuml.jar -gui

它工作了一段时间,但是突然间我开始出现以下错误。一切都变慢了,并且不再生成图表图像,GUI不在我选择的文件夹中列出图像文件。任何帮助将不胜感激。

Exception in thread "AWT-EventQueue-0" java.lang.StackOverflowError
        at java.io.InputStream.<init>(Unknown Source)
        at java.io.FileInputStream.<init>(Unknown Source)
        at net.sourceforge.plantuml.AFileRegular.open(AFileRegular.java:57)
        at net.sourceforge.plantuml.preproc.FileWithSuffix.getReader(FileWithSuffix.java:65)
        at net.sourceforge.plantuml.preproc.StartDiagramExtractReader.getReadLine(StartDiagramExtractReader.java:106)
        at net.sourceforge.plantuml.preproc.StartDiagramExtractReader.containsStartDiagram(StartDiagramExtractReader.java:136
)
        at net.sourceforge.plantuml.preproc2.PreprocessorInclude3.getReaderInclude(PreprocessorInclude3.java:326)
        at net.sourceforge.plantuml.preproc2.PreprocessorInclude3.manageFileInclude(PreprocessorInclude3.java:262)
        at net.sourceforge.plantuml.preproc2.PreprocessorInclude3.access$500(PreprocessorInclude3.java:75)
        at net.sourceforge.plantuml.preproc2.PreprocessorInclude3$Inner.readLineInternal(PreprocessorInclude3.java:149)
        at net.sourceforge.plantuml.preproc2.ReadLineInsertable.readLine(ReadLineInsertable.java:65)
        at net.sourceforge.plantuml.preproc2.Preprocessor2.readLine(Preprocessor2.java:87)

1 个答案:

答案 0 :(得分:0)

我发现了问题。 StackOverflowError应该给了我一个提示,但我错过了。通常,它与递归循环有关。 我正在使用文件包含功能,并具有循环文件引用。因此plantuml进入了(或者我正在发送它)一个无限循环,因此它耗尽了堆栈空间。