我有几个应用程序,这些应用程序一起使用多个库项目 所以我有15个图书馆项目,其中包括20个不同的应用项目。
当我试图从Eclipse转移到Android Studio时,Android Studio试图将这15个lib复制到每个应用程序项目,这很糟糕 - 这就是我继续使用Eclipse的原因。
现在转移到Android Studio是不可避免的,我真的不知道如何在Eclipse中保存我的lib结构,就像在Eclipse中一样。
在Eclipse中它非常简单,您可以将项目标记为lib,然后您可以将其包含到任何其他项目而无需复制源文件。
这可以在Android Studio上使用吗? 如果是的话,你能告诉我怎么样吗?
注意:Lib结构有点复杂 对于insance,一些libs正在使用其他库等。
答案 0 :(得分:1)
同样在Android Studio中,您可以使用库模块而无需在不同项目中复制源代码。 同时将项目从Eclipse迁移到Android Studio,检查是否可以使用maven依赖项替换相同的lib或jar。迁移很容易。
这里有一些步骤要在更多项目中包含相同的库。
您可以使用settings.gradle
属性在project().projectDir
中指定相对路径,如下所示:
include ':lib'
project(':lib').projectDir = new File('xxxxxx') // Relative file path from your settings.gradle
通过这种方式,您可以在项目中使用lib模块而无需克隆代码。
要将模块标记为库,您只需在build.gradle
(模块)中应用正确的插件。
apply plugin: 'com.android.library'
示例:强>
Project0
|--library
|----build.gradle
|build.gradle
|settings.gradle
Project1
|--app
|----build.gradle
|build.gradle
|settings.gradle
Project1/settings.gradle
中的
include ':library'
project(':library').projectDir = new File(settingsDir, '../Project0/library')
付费参加:您必须引用library
内的Project0
文件夹,而不是Project0的根文件夹。
Project1/app/build.gradle
中的
dependencies {
compile project(':library')
}