我从http://hg.openjdk.java.net/openjfx/8/master/tests/获得并构建了 JemmyFX 和 JemmyFXBrowser ,但我不知道如何启动它。从目录tests/tools/Jemmy
,我首先尝试:
$ java -jar JemmyFXBrowser/dist/JemmyFXBrowser.jar
但这会产生异常:
Exception in thread "main" java.lang.NoClassDefFoundError: org/jemmy/timing/State
然后我尝试将所有内容添加*.jars
到类路径中,如下所示:
$ java -cp ./JemmyFX/dist/JemmyFX.jar:./GlassRobot/dist/GlassRobot.jar:./GlassImage/dist/GlassImage.jar:./jemmy_core/JemmySupport.jar:./jemmy_core/JemmyAWTInput.jar:./jemmy_core/JemmyBrowser.jar:./jemmy_core/JemmyCore.jar:./jemmy_core/junit.jar -jar ./JemmyFXBrowser/dist/JemmyFXBrowser.jar
但这会产生与上面提到的完全相同的异常。所以,我爆炸了JemmyFXBrowser.jar
发现主类的名称并尝试了这个:
$ java -cp ./JemmyFX/dist/JemmyFX.jar:./GlassRobot/dist/GlassRobot.jar:./GlassImage/dist/GlassImage.jar:./jemmy_core/JemmySupport.jar:./jemmy_core/JemmyAWTInput.jar:./jemmy_core/JemmyBrowser.jar:./jemmy_core/JemmyCore.jar:./jemmy_core/junit.jar:./JemmyFXBrowser/dist/JemmyFXBrowser.jar org.jemmy.fx.Browser
这导致了几个例外。首先,这个:
Exception in thread "FX app launch thread" java.lang.ArrayIndexOutOfBoundsException: 0
然后这个,一遍又一遍:
java.lang.IllegalStateException: Toolkit not initialized
很明显,我在这里遗漏了一些非常基本的东西,但是我在任何地方都找不到关于这个应用程序应该如何启动的文档,而且它没有内置帮助。