[英]Java Out of Heap Space
在我的java程序中,我使用文本到语音来说出数字,在它说出大约150个数字后,它从堆空间中消失(从JAR打开时)我确实尝试增加堆空间但仍然问题仍然存在。
使用批处理脚本:
java -Xmx1024m -jar Super_Brain Academy.jar
pause
[ Super_Brain Academy.jar
是文件名],但这仍然无法解决我的问题,因为它只增加了主JAR文件而不是TTS(freeTTS)的堆空间。
我也尝试制作一个胖胖的Jar然后这样做,但问题是当我制作胖JAR时TTS停止工作而我无法听任何东西。 我试图通过这种方法制作胖JAR。 我还尝试从stackoverflow上给出的其他方法制作胖JAR,但是它们让我感到困惑,我无法理解它们。 我是一个新手(你可能已经想到了,直到现在)并使用Netbeans 8。
根据我的知识,我认为错误必须来自这个代码块,它位于一个单独的java文件中:
private static final String VOICENAME = "kevin16";
VoiceManager voiceManager = VoiceManager.getInstance();
//这里有些代码..........
private void RandomjBActionPerformed(java.awt.event.ActionEvent evt) {
//When the button is clicked it generates one random number according to the conditions and speaks it up
Voice voice;
voice = voiceManager.getVoice(VOICENAME);
voice.allocate();
//Some variable declarations and initializations along with set visible commmands were here(removed as irrevelant for the problem)
for (g = 0; g==0;) {
ran = (int) (Math.random() * (c)); // Random Number Creation Starts
if(ran>=c/10){
g = 1;
//Some logic statements here
}//IF ENDS
if(g!=0){
if(num<0){
num = num * (-1); // MAKING NUM ALWAYS +ve
}
}//if(g!-0) ends here
}//for loop ends
d = d+ran;
t4.setText("" + ran);
voice.speak(t4.getText());
listenanum.setText("" + d);
listenanum.setVisible(false);
}
一次又一次地点击这个randomjB ,这就是问题发生的时候。 (我从上面的代码中删除了很多行,所以它对你来说实际上没有意义......但我只剩下那些我觉得很重要的行)
对于randomjB的完整代码,请检查此项
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.