gpt4 book ai didi

java - `assert`是关键字,用Gradle编译

转载 作者:行者123 更新时间:2023-12-02 01:45:04 26 4
gpt4 key购买 nike

我正在使用 Gradle 编译 Java 项目。当我运行 gradle build 时,我得到:

Task :compileJava FAILED /home/mvh/projects/research/DPM/src/main/java/DPM/bandera/Bandera.java:102: error: as of release 1.4, 'assert' is a keyword, and may not be used as an identifier public static void assert(boolean expr) { ^ (use -source 1.3 or lower to use 'assert' as an identifier) 1 error

显然,在使用 javac 编译时,解决方案是根据错误消息添加参数 -source 1.3。所以我尝试在 gradle 中添加这个参数,如下所示:

compileJava {
options.compilerArgs << '-ea'
}

我还尝试了 enableassertions-enableassertionsea 来代替 -ea

我也尝试过这个:

test {
enableAssertions = true
}

也无济于事。如何让我的 gradle 构建文件在编译我的项目时启用断言?谢谢!

最佳答案

你尝试过吗?

compileJava {
options.compilerArgs << '-source 1.3'
}

我必须警告您,这样您就会失去所有“现代”语言功能(例如泛型)。

PS:正确的解决方案是重命名 Bandera 类中的 assert 方法。

编辑设置此标志的正确方法是

compileJava {
sourceCompatibility = 1.3
}

重命名方法是解决此问题的更好方法。

关于java - `assert`是关键字,用Gradle编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53811241/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com