【问题标题】:AndroidStudio Library resource sharingAndroid Studio 库资源分享
【发布时间】:2013-11-25 14:08:05
【问题描述】:

今天我遇到了 Android Studio 的问题。

我有这个项目树:

  • 应用程序(这是可执行应用程序)
  • ui(这是库)
  • ui-common(这是库)
  • ui-tablet(这是图书馆)
  • ui-phone(这是图书馆)

应用程序使用用户界面 ui 使用 ui-tablet 和 ui-phone ui-phone 使用 ui-common ui-tablet 使用 ui-common

ui-common 包含常用的java代码、drawable和strings资源

现在,我尝试编译项目,但出现下一个错误: “错误:在导入 home.test.ui.common.R 时,包 home.test.ui.common 不存在;”

java类正常可用,但R类不存在...文件build\source\r\debug\sta\android\ui\common正常生成

我的项目的 gradle 文件: -ui

...
apply plugin: 'android-library'

dependencies {
    compile project(":ui-common")
    compile project(":ui-phone")
    compile project(":ui-tablet") 
}
...

-ui-普通

...
apply plugin: 'android-library'

dependencies {
}
...

-ui-手机

...
apply plugin: 'android-library'

dependencies {
    compile project(":ui-common")
}
...

-ui-平板电脑

...
apply plugin: 'android-library'

dependencies {
    compile project(":ui-common")
}
...

-应用

...
apply plugin: 'android'

dependencies {
    compile project(":ui")
}
...

.iml 文件库中也包含: 用于 ui-phone 和 ui-tablet 项目:

<orderEntry type="module" module-name="ui-common" exported="" />

对于 ui 项目:

<orderEntry type="module" module-name="ui-phone" exported="" />
<orderEntry type="module" module-name="ui-tablet" exported="" />

申请项目

<orderEntry type="module" module-name="ui" exported="" />

如何设置项目 ui-common 以与 ui-tablet 和 ui-phone 项目共享资源?

更新 1 ui-common\build\source\r 仅包含发布文件夹,不生成调试文件夹。 我尝试将 ui-phone 项目中 ui-common 的依赖类型从“编译”更改为“编译调试”。在此 ui-phone 项目编译后正常运行,但我对其他项目有错误。为什么 android studio/gradle 没有生成调试输出?对于其他库(调试和发布正常生成)

【问题讨论】:

    标签: android gradle android-studio


    【解决方案1】:

    好的,我正在解决我的问题。我在包名和资源合并方面的错误

    在 ui-phone 项目中我必须使用 ui-phone.R,因为资源已经合并!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-23
      • 1970-01-01
      • 1970-01-01
      • 2015-05-17
      • 1970-01-01
      • 2014-11-10
      • 2015-07-12
      • 1970-01-01
      相关资源
      最近更新 更多