我有一个gradle文件,其根目录设置为(来自settings.gradle文件(
rootProject.name = 'PackageX'
在一个groovy测试中,我试图访问不同包中的一个类。
def setup(){
mapper = new DynamoDBMapper(dynamoDb)
DynamoDBTableMapper<?, ?, ?> amazonDynamoDBMapper = mapper.newTableMapper(Entity.class)
}
这里Entity.class在"PackageY"中,因此我得到错误
无法解析类com.mainpackage.sub1.sub2.PackageYsub11sub12。
添加带有以下行的导入语句无法解决错误
import com.mainpackage.sub1.sub2.PackageY.sub11.sub12.sub13.Entity
Entity.class之上的Package语句是
package com.mainpackage.sub1.sub2.PackageY.sub11.sub12.sub13
文件夹结构类似
| -PackageY
| -src
| -main
| -java
| -com.mainpackage.sub1.sub2.PackageY
| -sub11
| -sub12
| -sub13
| -Entity.java
有人能建议一下在groovy测试用例中访问跨包类文件的正确方法吗。
此处Entity.class位于'PackageY'中
如果Entity
位于名为PackageY
的包中,则需要使用其完全限定名PackageY.Entity
来引用类,或者在文件顶部的包语句之后提供适当的导入语句。该导入语句可以是import PackageY.Entity
或import PackageY.*
。
请注意,包名称包含大写字母是不标准的,以大写字母开头更是不标准
更新
问题已经更新,表明Entity
在com.mainpackage.sub1.sub2.PackageY.sub11.sub12.sub13
包中,因此我上面提到的导入语句将是import com.mainpackage.sub1.sub2.PackageY.sub11.sub12.sub13.*
或import com.mainpackage.sub1.sub2.PackageY.sub11.sub12.sub13.Entity
。