我有一个包com.myapp.api
,其中包含几个辅助类和许多模型类。为了组织起见,我希望我可以将所有模型放在名为Models
的子文件夹中。
当我这样做时,Android Studio会在每个模型文件上标记一个错误,并说他们的包应该命名为com.myapp.api.Models
。
重命名包不是什么大问题,但我需要这些模型来访问辅助类中存在的一些包可见方法和变量。如果我重命名,我必须公开这些方法和变量,我不想这样做。
有没有办法强制Android Studio不尝试根据文件结构创建新包?
答案 0 :(得分:5)
简单的答案是否定的。这不是Android Studio的东西,它是Java的东西 - 磁盘上的目录对应于包。
如果你真的有动力去解决它,你可以设置多个源文件夹,例如
并操纵 build.gradle 中的srcDirs
以添加新的源目录:
sourceSets {
main.java.srcDirs = ['src/main/java', 'src/main/java-models']
}
但这是组织你的来源的一种令人困惑的方式,这是你很少看到的模式。
答案 1 :(得分:2)
我不认为这是可能的。我很确定这是Java语言规范的强制要求,虽然我无法准确地告诉你哪一部分。