gpt4 book ai didi

java - R.java 中的奇怪错误,即使在清理项目 : "Underscores can only be used with source level 1.7 or greater" 之后

转载 作者:太空狗 更新时间:2023-10-29 23:02:59 24 4
gpt4 key购买 nike

所以一切都非常顺利,直到不久前 R.java 决定在添加图标(5_content_new.png,确切地说是 5_content_new.png)后出现此错误。

我已经尝试清理项目并重新启动 eclipse,但无济于事。

问题代码:

public static final class drawable {
public static final int 5_content_new=0x7f020000;
public static final int ic_launcher=0x7f020001;
...
}

红线出现在 5_ 的正下方,错误说:

下划线只能用于源级别 1.7 或更高级别

有没有人遇到过这样的问题?

最佳答案

这是两件事的结合:

  1. Java 标识符不能以数字开头。第一个字符应该是一个字母。

  2. 在 Java 7 中,他们引入了整数文字的替代语法;例如1_0001000 相同。

所以发生的事情是编译器将 5_content_new 解析为 5_content_new ...如果源级别是 Java 7,这是合理的,然后告诉你您没有使用 Java 7。如果您一直在使用 Java 7,那么该编译错误将被一个表示整型文字 (5_) 在此时不合法的错误所取代。

简而言之,代码包含一些非常“离奇”的东西,以至于编译器编写者在编译器诊断代码中没有预料到它。


另一点是,在 Java 中的变量、方法、类或包名称中使用任何下划线都是风格违规。下划线只能用于全部大写的常量名称,例如“MAX_VALUE”。

关于java - R.java 中的奇怪错误,即使在清理项目 : "Underscores can only be used with source level 1.7 or greater" 之后,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15037450/

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