模块依赖 - Android Studio

2024-01-26

我的项目 M1、M2 下有 2 个模块

Project
  - M1
  - M2

早些时候,我将 M1 作为我的主要应用程序。然而,需要新的应用程序 M2 与 M1 共享许多通用内容。因此,我创建了一个新模块 M2,并以 M1 作为依赖项。

为了实现这一点,我修改了 M1 和 M2 的 build.gradle,如下所示:

M2:

compile project(':M1')

M1:(改为图书馆)

apply plugin: 'com.android.library'

但是,这不起作用并引发错误:

Could not find property 'applicationVariants' on com.android.build.gradle.LibraryExtension_Decorated@6de81701.

关于如何解决这个问题有什么想法吗?


来自文档:

在 Android 项目中,这有点复杂,因为可能有大量相同的任务,并且它们的名称是根据构建类型和产品风格生成的。

为了解决这个问题,android 对象有两个属性:

applicationVariants(仅适用于应用程序插件)

LibraryVariants(仅适用于库插件)

testVariants(对于两个插件)

这三个对象分别返回 ApplicationVariant、LibraryVariant 和 TestVariant 对象的 DomainObjectCollection。

http://tools.android.com/tech-docs/new-build-system/user-guide http://tools.android.com/tech-docs/new-build-system/user-guide

所以看来你的 M1 中的 build.gradle 使用了该属性applicationVariants这不适用于图书馆项目。因为我不知道你到底在做什么,我只能猜测你要么需要(1)将其替换为libraryVariants或者(2)将其移动到M2的build.gradle中。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

模块依赖 - Android Studio 的相关文章

  • onBeaconServiceConnect 未调用

    和以前一样 我使用 Android Beacon 库 它已经工作了 我可以通过 BLE 低功耗蓝牙找到信标 但是现在 更新到最新版本的库后 现在方法onBeaconServiceConnect 不再跑了 请告诉我我需要做什么才能让它发挥作用
  • Android webview 滚动不起作用

    我正在尝试在网络视图中向下滚动到页面底部 我正在使用谷歌在其教程中提供的网络视图示例 我正在使用这行代码来尝试滚动 但它不起作用 mWebView pageDown true 关于如何使其以编程方式滚动有什么建议吗 谢谢 public cl
  • Android 在打开应用程序时会广播吗?

    例如 如果我想知道Youtube何时打开 是否有与之相关的广播 我当然知道我可以轮询 logcat 消息来检查活动 但我可以通过广播来做到这一点吗 因为它会少得多的耗电 此链接似乎表明这是不可能的 如何跟踪 Android 中的应用程序使用
  • Twitter 登录说明

    我想在 Android 中创建一个 Twitter 应用程序 为此 我想创建一个登录页面并登录到 Twitter 为此 我们需要消费者密钥和消费者密钥 这是什么意思 要创建此登录页面 除了 Twitter 帐户之外 我们还需要其他任何东西吗
  • FTS3 在 ORMLite 中搜索?

    我对 FTS3 一无所知 除了http developer android com guide topics search search dialog html http developer android com guide topics
  • Android 如何更改 OnTouchListener 上的按钮背景

    你好 我在 xml 中有一个按钮 我正在使用OnTouchListener在我的活动中获得button按下并释放 但问题是 当我按下按钮时背景颜色没有改变 当我延长可能的活动时OnClickListener背景正在改变 任何人都可以告诉我的
  • ffmpeg视频已压缩但无法在浏览器中播放

    我已经集成了ffmpeg4android lib 视频压缩工作正常 但视频无法在除 safari 浏览器之外的浏览器中播放 上传到服务器后 我使用了以下命令 ffmpeg y i
  • 使用 ADB 命令获取 IMEI 号码 Android 12

    对于 11 之前的 Android 版本 我使用以下命令从我的设备获取 IMEI 号码 adb shell service call iphonesubinfo 4 cut c 52 66 tr d space or adb shell s
  • 调试:在 Android 1.0 中找不到文件

    今天我更新到 Android Studio v 1 0 在尝试编译任何项目时出现以下错误 app build intermediates classes debug 找不到文件 问题是在更新之前我没有任何问题 这是我实际尝试编译的代码 构建
  • 如何在android线性布局上获得阴影? [复制]

    这个问题在这里已经有答案了 可能的重复 如何在android中为View设置阴影 https stackoverflow com questions 4406524 how to set shadow to a view in androi
  • 如何为发布而不是调试创建密钥库?扑

    我按照使用此网站部署 flutter 的步骤进行操作https flutter io android release https flutter io android release 当我运行 flutter build apk 时出现此错
  • glTexImage2D: 之前出错:( 0x506 内部 0x1908 格式 0x1908 类型 0x1401

    当使用 Android Studio 运行模拟器时 我在模拟器屏幕上看不到任何内容 一切都是黑色的 我得到以下事件日志 模拟器 glTexImage2D 出错了 0x506 内部 0x1908 格式 0x1908 类型 0x1401 我已经
  • Android Studio:未找到 Gradle DSL 方法:“classpath()”

    首先 我已阅读所有其他解决方案帖子以及有关迁移到 1 0 的官方文档 到目前为止 还没有任何效果 Error Error 23 0 Gradle DSL method not found classpath Possible causes
  • 菜单在片段的 onCreateOptionsMenu 处多次膨胀调用

    我使用 Fragments 当我切换到嵌套 Fragment 时 它实现了public void onCreateOptionsMenu Menu menu MenuInflater inflater 当我到达该嵌套片段时 我的菜单会多次膨
  • PhoneStateListener 不调用

    这是我的完整代码 广播示例 java package com example broadcast gt import android app Activity import gt android content Context import
  • 在 Android 中调整可绘制对象的大小

    我正在为进度对话框设置一个可绘制对象 pbarDialog 但我的问题是我想每次调整可绘制的大小 但不知道如何调整 这是一些代码 Handler progressHandler new Handler public void handleM
  • 按钮 - 单击时更改背景颜色

    我的活动中有 8 个按钮 我正在寻找的是 按钮具有默认背景 单击按钮时 背景颜色应更改为其他颜色 这部分非常简单 但是 当我单击任何其他按钮时 第一个按钮的背景颜色应该变回默认颜色 我知道这将使用 选择器状态 来完成 但我不太确定如何实现它
  • 如何在android asynctask中使用inputstream作为参数?

    我正在制作一个 Android 应用程序来跟踪股票详细信息 我将通过 csv 雅虎财经 检索数据 据我所知 在android 4 0中 网络连接无法在主线程上完成 因此 我将使用 asynctask 来建立连接 但是 我在参数方面遇到了一些
  • 在 KitKat 4.4.2 中获取 SDard 路径和大小

    我在 Google Play 上有一个设备信息应用程序 在该应用程序中我有存储信息 我知道 Android 4 4 在访问外部 SD 卡方面发生了一些变化 内部似乎没有给我带来问题 我的问题是 如何可靠地获取 KitKat 上 SD 卡的大
  • Android:AsyncTask ProgressDialog 将不会在 ActivityGroup 中打开

    我试图在轮询我的服务器时打开一个进度对话框 该类是一个 ActivityGroup 因为它嵌套在选项卡栏中 为了将视图保持在框架内 需要 ActivityGroup 这是我的 ActivityGroup 类的声明 public class

随机推荐

  • 传入工作日名称以获取 SQL 中最接近的日期

    我正在研究一个处理频率值的查询 即星期一 星期二等 思考作业 所以在我的查询中我目前的结果是 jobId 1 personId 100 frequencyVal Mondays jobId 2 personId 101 frequencyV
  • JavaFX - 动态关闭 TabPane 中的选项卡

    我有一个带有可关闭选项卡的 TabPane 当用户单击选项卡内容中的按钮时 我想触发 关闭选项卡事件 这是用户单击按钮时调用的方法 public class CustomTab extends Tab protected void clos
  • 我应该安装@types/node吗? VSCode 好像自动安装了

    我看到很多人都在安装 types node在他们的开发依赖项中 但是 如果您在 VSCode 中打开一个空文件夹 并创建一个空的 js 文件 然后输入 const fs require fs lt hover it and type sho
  • GNU Make for 带有两个变量的循环

    我想写一些这样的内容 foreach var1 var2 LIST1 LIST2 cp var1 var2 我该如何在 GNU makefile 中执行此操作 Beta关于使用join的建议是正确的 但问题是 以构造包含空格的命令行的方式使
  • Firestore 活动文档快照侦听器中断排序

    我遇到了一个 Firestore 问题 希望有人可以帮助我解决 我有一个活动文档快照侦听器 它似乎破坏了排序行为 我不确定为什么 在组件的构造函数中 我初始化文档快照侦听器一次 this listen this fs collection
  • 数据库允许应用程序始终通过 SP 进行 CRUD 操作是最佳实践吗?

    我听过这背后的推理 我很好奇其他人是否认为这是最佳实践 好主意 一种推理是 限制对数据库表的直接访问 并强制应用程序 用户使用 SP 存储过程 进行 CRUD 操作将允许 DBA 在将 SP 投入生产之前进行细粒度控制以批准 审查 SP 避
  • 从 monodroid 类库访问资源

    是否可以从引用类库的 monodroid 应用程序中的 monodroid 类库访问文件 使用构建操作 AndroidAsset 我在类库中创建了一个 Assets 文件夹 并添加了一个带有构建操作 Android Asset 的文本文件
  • 如何减少 TextField 上 prefixIcon 的填充?

    我不知道如何超越 48px 材质库默认值 我快速浏览了 SDK 但没有找到任何东西 我知道这与 prefixIcon 参数本身有关 因为无论里面放什么 它总是 48px 或其他任何值 我有一个自定义 SDK 所以如果有人知道它在哪里 我想减
  • GIT 接收后结账,无需根文件夹

    我是 git 新手 试图弄清楚如何通过检查网络根目录来更新每次推送的网站 我搜索了 stackoverflow 只找到了有关如何克隆的主题 这不是我想要的 到目前为止 我已经设置了本地和远程存储库 以及接收后挂钩 bin sh GIT WO
  • iOS:在 UIImage 上绘制 NSString 和边框

    我想在我已有的 UIImage 上绘制一个 NSString 和一个边框 我找到了一种将 NSString 绘制为 UIImage 的方法 但我需要它在我提供的图像上绘制 UIImage imageFromText NSString tex
  • Android Firebase Analytics 控制台中的自定义事件报告

    如果这是发布此问题的不正确位置 请提前接受我的歉意 因为我不确定会是什么 我想要完成的是甚至使用 Firebase 分析来记录自定义 该分析在 Firebase 控制台中生成与他们的示例类似的报告select content事件 其触发方式
  • 无法安装 phpMyAdmin 错误:php71w-common 与 php-common-5.4.16-43.el7_4.1.x86_64 冲突

    我刚刚安装了 CentOS 7 和 PHP 7 1xx 和 MySQL 但无法安装 phpMyAdmin 我有一条错误消息 但在 Google 上没有答案 是的 只有一个答案 但它本身给了我相同的错误消息 rpm iUvh http dl
  • MySQL:`... ADD INDEX(a); 之间的区别... ADD INDEX(b);` 和 `... ADD INDEX(a,b);`?

    有人可以告诉我这两者有什么区别 ALTER TABLE x1 ADD INDEX a ALTER TABLE x1 ADD INDEX b AND ALTER TABLE x1 ADD INDEX a b 我知道这涉及到最基本的问题 但有时
  • Javascript 合并具有嵌套属性的对象

    让我们看一下下面的例子 var ref fullName rules type string minLength 4 maxLength 64 description Full name of a user var user fullNam
  • 如何将大文件导入到 PostgreSQL 中?

    我在一个新项目中 现在必须使用现有的 PostgreSQL 数据库 该应用程序是使用 CakePHP 构建的 我在导入时面临的问题是数据库的文件大小约为 4 8 GB 而我对 PostgreSQL 完全陌生 我曾研究过 MySql 和 No
  • 数据结构填充

    C 中的数据结构填充是什么以及如何检查填充字节的字节数 class a public int x int y int z 处理器要求某些类型的数据具有特定的对齐方式 例如 处理器可能需要int位于 4 字节边界上 因此 例如 一个int可以
  • LinkedBlockingQueue 的 Java 性能问题

    这是我在 stackoverflow 上的第一篇文章 我希望有人能帮助我 我的 Java 6 性能大幅下降LinkedBlockingQueue 在第一个线程中 我生成一些对象并将其推入队列 在第二个线程中 我将这些对象拉出来 当take
  • 如何在 Nunit 中调用 WPF Dispatcher?

    我想测试一个使用数据字段值呈现文本块的应用程序 渲染完成后 我想获得实际宽度和实际高度 一切正常 当我尝试测试该应用程序时 问题首先出现 我无法从测试项目调用调度程序 以下是代码 this Loaded s e gt TextBlock t
  • Xcode 6.1 - 如何卸载命令行工具?

    我通过发出安装了 Xcode 命令行工具xcode select install 现在我想卸载它 不卸载Xcode 我试过了 sudo Developer Library uninstall devtools mode all 但后来我得到
  • 模块依赖 - Android Studio

    我的项目 M1 M2 下有 2 个模块 Project M1 M2 早些时候 我将 M1 作为我的主要应用程序 然而 需要新的应用程序 M2 与 M1 共享许多通用内容 因此 我创建了一个新模块 M2 并以 M1 作为依赖项 为了实现这一点