AndroidManifest.xml中的包'com.class.xxx.test'不是有效的Java包名称,因为'class'是Java关键字

时间:2018-07-23 10:11:02

标签: java android unit-testing keyword package-name

我是android中的意式浓缩咖啡测试的新手。当我尝试构建测试apk时,出现此错误:

Package 'com.class.xxx.test' from AndroidManifest.xml is not a valid Java package name as 'class' is a Java keyword.

在测试构建配置或任何其他解决方案中,是否有任何方法可以更改软件包名称?

谢谢!

2 个答案:

答案 0 :(得分:1)

就这么简单。

  

不是有效的Java包名称,“ class”是Java关键字。

Java中有一些保留关键字。您不能使用。您正在使用 class ,这是保留字。

您可以将类包名称更改为解决方案。

List of Java reserved keywords.

答案 1 :(得分:0)

之所以得到这个,是因为我有一个带有-的软件包名称(即test-support)。在模块的AndroidManifest.xml中,我拥有

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.thomas.myapp.test-support" />

Java Language Spec

  

如果域名包含连字符或标识符中不允许的任何其他特殊字符(第3.8节),请将其转换为下划线。

我没有转换为下划线,而是删除了连字符。我将AndroidManifest.xml更改为

<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.thomas.myapp.testsupport" />

,现在可以正常工作了。 Khemraj's answer使我走上了正确的道路。