一个JavaFX8程序,最开始用Java开发,现在往Groovy上转,现在Java代码和Groovy代码都有。
(1)一开始继承关系只有Groovy类继承Java类,:compileJava没有问题,:compileGroovy失败,提示Execution failed for task ':compileGroovy'.
> Unable to load class xxx.XXXXX due to missing dependency javafx/beans/property/ObjectProperty
编译java时候能找到javafx相关类,编译groovy却找不到
(2)后来将那个报错的类变成Groovy类以后,就变成Groovy集成Java,Java又继承Groovy这样,Gradle在编译Java时提示找不到用Groovy写的父类(这是肯定的)。
(3)无论是上面哪一种情况,在IDEA里直接右键运行Main class都能直接跑起来。
刚刚开始接触groovy和gradle,希望高手帮忙解答
已解决。需要在build.gradle中加入以下内容(或其他等价写法)。
configurations{providedCompile}
dependencies{
providedCompilefiles("${System.env['JAVA_HOME']}/jre/lib/ext/jfxrt.jar")
}
sourceSets{
main{
compileClasspath+=configurations.providedCompile
}
test{
compileClasspath+=configurations.providedCompile
runtimeClasspath+=configurations.providedCompile
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。