TestFX与Java 7兼容吗?

时间:2016-10-24 13:55:08

标签: java eclipse maven javafx-2 testfx

运行以下代码段(在Eclipse中设置JDK 7):

import javafx.scene.Scene;
import javafx.stage.Stage;

import org.junit.Test;
import org.testfx.framework.junit.ApplicationTest;

public class BasicTestFxTest extends ApplicationTest 
{
    @Override
    public void start(Stage stage) throws Exception 
    {
        Scene scene = new Scene(null, 800, 600);
        stage.setScene(scene);
        stage.show();
    }

    @Test
    public void test()
    {
        System.out.println("This is not a test.");
    }
}

导致以下异常:

  

因为java.lang.UnsupportedClassVersionError:   org / testfx / framework / junit / ApplicationTest:不支持的major.minor   版本52.0 at java.lang.ClassLoader.defineClass1(Native Method)at   java.lang.ClassLoader.defineClass(未知来源)at   java.security.SecureClassLoader.defineClass(未知来源)at   java.net.URLClassLoader.defineClass(未知来源)at   java.net.URLClassLoader.access $ 100(未知来源)at   java.net.URLClassLoader $ 1.run(未知来源)at   java.net.URLClassLoader $ 1.run(未知来源)at   java.security.AccessController.doPrivileged(Native Method)at   java.net.URLClassLoader.findClass(未知来源)at   java.lang.ClassLoader.loadClass(未知来源)at   sun.misc.Launcher $ AppClassLoader.loadClass(未知来源)at   java.lang.ClassLoader.loadClass(未知来源)at   java.lang.ClassLoader.defineClass1(Native Method)at   java.lang.ClassLoader.defineClass(未知来源)at   java.security.SecureClassLoader.defineClass(未知来源)at   java.net.URLClassLoader.defineClass(未知来源)at   java.net.URLClassLoader.access $ 100(未知来源)at   java.net.URLClassLoader $ 1.run(未知来源)at   java.net.URLClassLoader $ 1.run(未知来源)at   java.security.AccessController.doPrivileged(Native Method)at   java.net.URLClassLoader.findClass(未知来源)at   java.lang.ClassLoader.loadClass(未知来源)at   sun.misc.Launcher $ AppClassLoader.loadClass(未知来源)at   java.lang.ClassLoader.loadClass(未知来源)at   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClass(RemoteTestRunner.java:685)     在   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.loadClasses(RemoteTestRunner.java:421)     在   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:444)     在   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)     在   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)     在   org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)

注意:我使用的是testfx-core和testfx-junit 4.0.1-alpha。

1 个答案:

答案 0 :(得分:1)

它在版本4(TestFX 4.0.0-alpha — February 27, 2015 - #103)中修复,但版本4处于alpha阶段

  

(修复)服务:修复与Java 7和JavaFX 2的兼容性。(#103) - 1   提交

问题:https://github.com/TestFX/TestFX/pull/103