Android Studio-添加不带新包的子文件夹

Android Studio-添加不带新包的子文件夹,android,android-studio,Android,Android Studio,我有一个包com.myapp.api,其中包括两个助手类和许多模型类。为了便于组织,我希望能将所有模型放在名为models的子文件夹中 当我这样做时,Android Studio会在每个模型文件上标记一个错误,说他们的包应该命名为com.myapp.api.Models 重命名包不会有什么大不了的,但是我需要这些模型来访问一些包可见的方法和helper类中存在的变量。如果我重命名,我必须公开这些方法和变量,我不想这样做 有没有办法强迫Android Studio不要尝试基于文件结构创建新包?我认

我有一个包
com.myapp.api
,其中包括两个助手类和许多模型类。为了便于组织,我希望能将所有模型放在名为
models
的子文件夹中

当我这样做时,Android Studio会在每个模型文件上标记一个错误,说他们的包应该命名为
com.myapp.api.Models

重命名包不会有什么大不了的,但是我需要这些模型来访问一些包可见的方法和helper类中存在的变量。如果我重命名,我必须公开这些方法和变量,我不想这样做


有没有办法强迫Android Studio不要尝试基于文件结构创建新包?

我认为这是不可能的。我很确定这是Java语言规范规定的,尽管我不能告诉您具体是哪一部分。

简单的答案是否定的。这不是Android Studio的东西,而是Java的东西——磁盘上的目录对应于包

如果你真的有动力解决这个问题,你可以设置多个源文件夹,例如

  • src/main/java/com/myapp/api
  • src/main/java models/com/myapp/api
并在build.gradle中操纵
srcDirs
,以添加新的源目录:

sourceSets {
    main.java.srcDirs = ['src/main/java', 'src/main/java-models']
}
但这是一种混乱的方式来组织你的源代码,这是一种你很少看到的模式