我目前正在为Android开发一些插件,并遇到了一个问题,即在实施所有插件的最终项目中找不到资源。要部署插件,我使用 gradlew install,它会生成一个.aar,其中包含 .jar 和一个res文件夹,该文件夹包含来自该项目的资源文件。
问题概述:
缺少的`card_view:cardCornerRadius`在我的项目中找不到,因为它从`Plugin A`未被复制到`Plugin B`中。我的问题如下:是否有一种方法让`Plugin B`知道`card_view:cardCornerRadius`是什么,而不必将`com.android.support: cardview-v7: 23.2.0`依赖添加到`Plugin B`中,而是从`Plugin A`复制它过来?
问题概述:
此时抛出的错误是:插件 A 使用谷歌的 com.android.support:cardview-v7:23.2.0 依赖项。
插件 A 现在将一个外部库添加到该项目中并可以访问 cardview res 文件夹。
在编译 插件 B 时,它使用来自插件 A 的资源,这是 cardview 的一个实例。
这个 cardview 使用来自 插件 A 的 res 文件夹的资源文件。
插件 B 现在将 插件 A 作为依赖项添加。
插件 B 现在具有来自插件 A的res文件夹,但仍然缺少来自cardview依赖项的资源项目。
Error:(8) No resource identifier found for attribute 'cardCornerRadius' in package...
这是因为插件 B像这样使用 cardview: <android.support.v7.widget.CardView
android:id="@+id/card_view"
android:layout_gravity="center"
android:layout_width="200dp"
android:layout_height="200dp"
card_view:cardCornerRadius="4dp">
<TextView
android:id="@+id/info_text"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</android.support.v7.widget.CardView>
缺少的`card_view:cardCornerRadius`在我的项目中找不到,因为它从`Plugin A`未被复制到`Plugin B`中。我的问题如下:是否有一种方法让`Plugin B`知道`card_view:cardCornerRadius`是什么,而不必将`com.android.support: cardview-v7: 23.2.0`依赖添加到`Plugin B`中,而是从`Plugin A`复制它过来?