我在一个 android 项目的中间,并试图在其中创建一个新包。
com.mycompany.myprojectname.new
好吧,Eclipse 不允许我创建它并显示此错误:
包名无效。'new' 不是有效的 Java 标识符
我从来不知道包名有保留字,我们不能使用。我的问题是;
- 这是Eclipse的事情吗?还是Java的东西?我尝试了一个纯 Java 项目(不是 Android),只是为了检查,但我也遇到了同样的错误。
- 还有哪些不允许的保留字?
- 有这方面的文件吗?
是的,这是一般 Java 的事情。
保留字列表可在此处找到。他们是:
abstract continue for new switch assert default goto package synchronized boolean do if private this break double implements protected throw byte else import public throws case enum instanceof return transient catch extends int short try char final interface static void class finally long strictfp volatile const float native super while
如果在包命名教程等地方找到保留字不能在包名称中使用这一事实的文档。
权威来源(一如既往)是 Java Language Specification,特别是:
请参阅此处的文档:
http://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html
在某些情况下,互联网域名可能不是有效的软件包名称。如果域名包含连字符或其他特殊字符,如果包名以数字或其他非法用作 Java 名称开头的字符开头,或者 如果包名包含保留的 Java 关键字,则会发生这种情况,比如“int”。
new
是一个java关键字。用其他词代替它。
YMMV 但要小心命名包target
;可能会弄乱您的代码存储库和/或 IDE