我正在尝试在我的Gluon JavaFX应用程序中设置JUnit测试。我正在使用带有Gradle和Java 8的Gluon Eclipse插件。
我的build.gradle文件如下所示:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'org.javafxports:jfxmobile-plugin:1.0.0-b10'
}
}
apply plugin: 'org.javafxports.jfxmobile'
repositories {
jcenter()
}
dependencies {
compile 'com.gluonhq:ignite-dagger:1.0.0'
compile 'org.elasticsearch:elasticsearch:1.6.0'
compile 'ch.qos.logback:logback-classic:1.1.5'
testCompile 'junit:junit:4.12'
}
mainClassName = 'com.me.MyApplication'
jfxmobile {
android {
manifest = 'src/android/AndroidManifest.xml'
}
ios {
infoPList = file('src/ios/Default-Info.plist')
}
}
解决依赖关系没有问题,但是在运行“测试”任务时,gradle会抛出如下错误:
我已经尝试根据GitHub上的README将retrolambda插件添加到gradle中,但是到目前为止,它尚无法正常工作。有人可以告诉我如何配置我的Gluon项目,以便能够使用Gradle运行JUnit测试吗?
一些重要的补充:
对于插件版本,它表示:Gluon Tools 1.0.0.201508201514
我想提到我想与Gluon Ignite一起使用Dagger依赖注入(inject),这对我来说可能是真正的问题,因为它需要Java 8,并且可能与javafxports或其他冲突。但是,我无法完全理解所看到的各种错误消息。
我的测试是空的,但是它们甚至没有运行,因为它以前失败了。
最佳答案
您的问题似乎是retroLambda配置问题。如果浏览插件的configuration页面,则会指出,如果没有为JAVA6_HOME
或JAVA7_HOME
设置环境变量,则需要显式定义oldJdk
才能使插件正常工作。