【问题标题】:Android Studio Package 2.2 RC2 StructureAndroid Studio 包 2.2 RC2 结构
【发布时间】:2016-09-11 11:38:29
【问题描述】:

我在使用 Android Studio 2.2 RC2 时遇到问题,当我将新包添加到项目结构中时,我看不到标准:

app
  +-- java
      +-- com.myapp
          +-- package

但是这个:

app
  +-- java
      +-- com.myapp
          +-- com.myapp.package

谁能帮帮我?

【问题讨论】:

  • 您在说“新包”时单击了哪里,然后输入了什么?

标签: java android package kotlin


【解决方案1】:

我发现了问题: 如果添加

dataBinding {
    enabled = true
}

到 app .gradle 项目结构显示没有标准的孩子。

【讨论】:

  • 是什么让你得出这个结论?它是否记录在某处(它与您在项目树中看到的内容的关系)?
  • 我测试了一下,发现有些包没有分组
【解决方案2】:

一种可能的情况:

当您在 Intellij(包括 Android Studio 在内的任何版本)中添加新包时,该命令会根据您右键单击以选择 New -> Package 的位置的上下文运行。将New -> Package 认为是New -> Add subpackage at this point in three 的真正含义。

所以你右键单击app/java 的源根并选择New -> Package 并输入one.two.three 你最终会得到:

app
  +-- java
      +-- one
          +-- two
              +-- three

但是,如果您右键单击 app/java/one/two/three 项目树中的新节点并选择 New -> Package 键入 one.two.other 您最终会将包嵌套在另一个中。您的树将是:

app
  +-- java
      +-- one
          +-- two
              +-- three
                  +-- one             <---- OOOPS!
                      +-- two
                          +-- other

但如果我在app/java 的根处右击并输入相同的包名one.two.other,我最终会得到:

app
  +-- java
      +-- one
          +-- two
              +-- three
              +-- other

我也可以点击app/one/two 的树,只输入other 来获得相同的结果,同样因为New -&gt; Package 正在向我碰巧采取行动的地方添加一个子包。

仅仅因为您在New -&gt; Package 中键入了一个完全限定的包名称,并不意味着 Intellij 知道您要返回并从根目录开始。它会从您单击的任何位置嵌套,即使您的意图可能很明显(对您),Intellij 始终从您开始操作的位置执行操作。

一些实际操作中的屏幕截图...

在错误的地方添加:(注意项目树中的选择)

结果:

在正确的位置添加:(注意项目树中的选择)

结果:

也在正确的位置添加:(展开折叠的中间包以查看为树)

结果:

【讨论】:

  • 问题不是包创建,而是树结构视图。我没有看到 otherthreeone.two.otherone.two.three
猜你喜欢
  • 1970-01-01
  • 2013-07-31
  • 2016-10-10
  • 1970-01-01
  • 1970-01-01
  • 2017-02-06
  • 1970-01-01
  • 2016-01-05
  • 2016-09-17
相关资源
最近更新 更多