有问题获得FreeTTS和JSAPI工作

Tra*_*vis 1 java jsapi freetts

首先,如果重要的话我会使用Ubuntu linux.
我有一个基于FreeTTS和JSAPI(Java Speech API)的简单项目构思

我已经下载并解压缩FreeTTS并运行他们的构建脚本.然后尝试编译我的代码将lib目录中所需的几个jar链接到类路径中,如下所示:

javac -cp /home/travis/Desktop/freetts-1.2/lib/jsapi.jar:/home/travis/Desktop/freetts-1.2/lib/freetts.jar HelloUnleashedReader.java
Run Code Online (Sandbox Code Playgroud)

然后编译成java字节码就好了.但是,当我跑:

java HelloUnleashedReader
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: javax/speech/EngineModeDesc
Run Code Online (Sandbox Code Playgroud)

关于这个问题的任何帮助将不胜感激,因为网络周围有许多网站讨论让它工作的问题,但讨论解决方案的问题并不多.

小智 5

我看到你正在使用Ubuntu.您必须先同意二进制许可证才能使用jsapi.jar.您在打开包装的过程中同意此许可.要在Ubuntu中解压缩jsapi.jar,您可以输入以下内容:

cd ~/Desktop/freetts-1.2/lib
chmod +x ./jsapi.sh
./jsapi.sh 
Run Code Online (Sandbox Code Playgroud)

如果您收到类似的消息

"./jsapi.sh:1428:ududecode:not found"

然后安装uudecode

sudo apt-get install sharutils
Run Code Online (Sandbox Code Playgroud)

然后再试一次