问题描述
因此,我正在尝试编写一个非常简单的文本到语音应用程序,很显然,我想做的第一件事是获得实际FreeTTS模块的句柄。我使用VSCode作为我的IDE,据我所知,我已经在“参考库”部分中放置了正确的.jar文件。我直接复制了应该做同样事情的其他人的代码,但它给了我同样的错误。简而言之,我遇到了一个错误,我不知道这意味着什么。
以下是代码:
// Imports
import com.sun.speech.freetts.Voice;
import com.sun.speech.freetts.VoiceManager;
public class TextToSpeech {
private static Voice[] voices;
public static void main(String[] args) throws Exception {
VoiceManager vm = VoiceManager.getInstance();
// Gathers all availible voices
voices = vm.getVoices();
// Sets the voice to a kevin voice
Voice voice = vm.getVoice("kevin");
voice.allocate();
voice.speak("Test test test");
voice.deallocate();
}
}
这是错误:
Exception in thread "main" java.lang.classCastException: class
com.sun.speech.freetts.en.us.cmu_time_awb.AlanVoiceDirectory cannot be cast to class
com.sun.speech.freetts.VoiceDirectory (com.sun.speech.freetts.en.us.cmu_time_awb.AlanVoiceDirectory
is in unnamed module of loader com.sun.speech.freetts.DynamicclassLoader @66048bfd;
com.sun.speech.freetts.VoiceDirectory is in unnamed module of loader 'app')
at com.sun.speech.freetts.VoiceManager.getVoices(VoiceManager.java:113)
at uk.co.softwarepulse.speech.app.TextToSpeech.main(TextToSpeech.java:51)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)