我正在使用IntelliJ IDEA中的Scala项目,并使用Gradle进行配置和依赖关系管理 .
每次我添加一些新的依赖项并将其同步到IDEA时,它会将 Additional compiler options 重写为 -target:jvm-1.8
,当我尝试使用IDEA时会导致错误:
Error:scalac: 'jvm-1.8' is not a valid choice for '-target'
Error:scalac: bad option: '-target:jvm-1.8'
所以我需要手动修复它 .
我可以在 build.gradle 中设置目标JVM版本或编译器参数(还需要 -feature
选项),那么它会从那里获取它们吗?
谢谢!
2 回答
您可以将
sourceCompatibility = '1.7'
添加到您的gradle构建文件,然后刷新,项目将正常构建 . 注意,这样你就不能在你的代码中拥有Java 8源代码,这是一个临时的hack,直到Gradleware
或JetBrains
解决了这个问题 .您还可以篡改运行
gradle idea
时生成的IDEA项目XML . 这将为您提供包含其他标志的选项 . 您可以通过打开项目.iml
文件并确定需要更改的内容来检查当前的xml,然后使用以下代码:不会推荐它,因为你将不得不坚持使用
gradle idea
并且无法直接从IDEA导入,但目前没有更好的方法来获得额外的标志 . 文档 - idea plugin和idea module我多年来一直在寻找解决方案,终于找到了 - 分享给其他读这篇文章的人 .
来自:https://devnet.jetbrains.com/message/5523902