找不到具有 Gradle 路径的模块。链接到库 - 未指定
Unable to find module with Gradle path. Linking to library -unspecified instead
更新 2 这已在 Android Studio 1.2 Beta 3
中修复
更新: 据报道,此问题已在即将发布的 Android Studio 版本中修复。
在 Android Studio 1.2 Beta 2 中,我在同步 Gradle 时开始收到以下警告。
Failed to set up dependencies
Warning:Unable to find module with Gradle path ':Library1'. Linking to library 'Library1-unspecified' instead.
Warning:Unable to find module with Gradle path ':Library2'. Linking to library 'Library2-unspecified' instead.
我注意到跳转到一个库模块中声明的声明会启动反编译器,而不是仅仅转到库模块中的实际源代码。
在我的 Android Studio 项目中,我有以下模块:
- App
- Library1
- Library2
模块:应用程序 build.gradle
代码段:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':Library1')
compile project(':Library2')
}
settings.gradle
文件:
include ':App'
include ':Library1'
include ':Library2'
project(':Library1').projectDir = new File(settingsDir, '../library1/lib')
project(':Library2').projectDir = new File(settingsDir, '../Library2/lib')
这是 1.2 Beta 2 中引入的已知错误。
请参阅 Android 问题跟踪器上的 This issue。修复应该会在数小时内完成。
我在 AS 2.0 预览中遇到了同样的问题,
我通过以下步骤修复了它:
1.Rename 模块。
2.Change app/build.gradle 和 setting.gradle 中的名字。
3.Start gradle 同步
我不知道为什么,但它对我的问题有效。
右键单击项目,Select "Configure Project Subset ..." 和 select 你的模块,重建你的项目。
我用 Android Studio 2.2.3 遇到过这个问题。问题出在导致问题的 .iml
文件上。
将模块文件夹导入项目目录并将更改添加到 settings.gradle
中的包含模块后,从模块文件夹中删除 .iml
文件并执行 Gradle 同步。然后右键单击项目 Window 中的任何模块并单击 "Configure Project Subset...",如果未选中导入的模块,请选中它并且 Android Studio 应该执行 Gradle 同步。到那时,导入的模块将出现在项目 Window 中,并且将重新生成一个 .iml
文件,该文件不会导致任何问题。
- 删除
error
模块下的.iml
文件。
- 重启Android工作室
问题:
更改模块路径时也会出现此问题。
settings.gradle
include ':app', ':filechooserlibrary'
project(':filechooserlibrary').projectDir = new File('../../repos-github/file-chooser/file-chooser-library/filechooserlibrary')
我把路径改成了'../../github/file-chooser/file-chooser-library/filechooserlibrary'
旧路径不存在了。但是随后,Android Studio 没有接受新路径,而是重新创建了旧路径结构,因此引用了一个空目录。
解法:
因此,我删除了这个过时的路径结构并在删除 .iml 文件后重新启动了 Android Studio(我不知道这是否有必要,但它不会造成伤害)。然后我重新导入了 Gradle 项目并且它起作用了。
检查设置。你的应用程序。
下面是字段 "Load/Unload Modules"
您的模块可能已卸载,这就是为什么 Android Studio 会忽略它,即使您在 Gradle 中指定它也是如此。
至少那是我的问题。
如果您正在使用 React-native>60
,那么在执行 Gradle 同步之前,您应该在项目的根目录下 运行 npx jetify
。
对我来说,以下内容适用于 Android Studio 3.5.3
首先,检查 Gradle 设置中的路径是否正确。
如果路径正确,则使缓存无效并重新启动,方法是导航到顶部'File' 菜单
我遇到了这个问题,点击
解决了这个问题
File> Ivalidate cache / Restart...
如下图:
尝试使用 NDK
的更新版本。
我遇到了同样的问题。
我使用的是 NDK
版本 r17c
。使用 r21e
.
后问题解决
- Android 工作室版本:
4.1.3
- OS: Ubuntu
18.04.5
更新 2 这已在 Android Studio 1.2 Beta 3
中修复更新: 据报道,此问题已在即将发布的 Android Studio 版本中修复。
在 Android Studio 1.2 Beta 2 中,我在同步 Gradle 时开始收到以下警告。
Failed to set up dependencies
Warning:Unable to find module with Gradle path ':Library1'. Linking to library 'Library1-unspecified' instead.
Warning:Unable to find module with Gradle path ':Library2'. Linking to library 'Library2-unspecified' instead.
我注意到跳转到一个库模块中声明的声明会启动反编译器,而不是仅仅转到库模块中的实际源代码。
在我的 Android Studio 项目中,我有以下模块:
- App
- Library1
- Library2
模块:应用程序 build.gradle
代码段:
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':Library1')
compile project(':Library2')
}
settings.gradle
文件:
include ':App'
include ':Library1'
include ':Library2'
project(':Library1').projectDir = new File(settingsDir, '../library1/lib')
project(':Library2').projectDir = new File(settingsDir, '../Library2/lib')
这是 1.2 Beta 2 中引入的已知错误。
请参阅 Android 问题跟踪器上的 This issue。修复应该会在数小时内完成。
我在 AS 2.0 预览中遇到了同样的问题, 我通过以下步骤修复了它:
1.Rename 模块。 2.Change app/build.gradle 和 setting.gradle 中的名字。 3.Start gradle 同步
我不知道为什么,但它对我的问题有效。
右键单击项目,Select "Configure Project Subset ..." 和 select 你的模块,重建你的项目。
我用 Android Studio 2.2.3 遇到过这个问题。问题出在导致问题的 .iml
文件上。
将模块文件夹导入项目目录并将更改添加到 settings.gradle
中的包含模块后,从模块文件夹中删除 .iml
文件并执行 Gradle 同步。然后右键单击项目 Window 中的任何模块并单击 "Configure Project Subset...",如果未选中导入的模块,请选中它并且 Android Studio 应该执行 Gradle 同步。到那时,导入的模块将出现在项目 Window 中,并且将重新生成一个 .iml
文件,该文件不会导致任何问题。
- 删除
error
模块下的.iml
文件。 - 重启Android工作室
问题:
更改模块路径时也会出现此问题。
settings.gradle
include ':app', ':filechooserlibrary'
project(':filechooserlibrary').projectDir = new File('../../repos-github/file-chooser/file-chooser-library/filechooserlibrary')
我把路径改成了'../../github/file-chooser/file-chooser-library/filechooserlibrary'
旧路径不存在了。但是随后,Android Studio 没有接受新路径,而是重新创建了旧路径结构,因此引用了一个空目录。
解法: 因此,我删除了这个过时的路径结构并在删除 .iml 文件后重新启动了 Android Studio(我不知道这是否有必要,但它不会造成伤害)。然后我重新导入了 Gradle 项目并且它起作用了。
检查设置。你的应用程序。 下面是字段 "Load/Unload Modules"
您的模块可能已卸载,这就是为什么 Android Studio 会忽略它,即使您在 Gradle 中指定它也是如此。
至少那是我的问题。
如果您正在使用 React-native>60
,那么在执行 Gradle 同步之前,您应该在项目的根目录下 运行 npx jetify
。
对我来说,以下内容适用于 Android Studio 3.5.3
首先,检查 Gradle 设置中的路径是否正确。
如果路径正确,则使缓存无效并重新启动,方法是导航到顶部'File' 菜单
我遇到了这个问题,点击
解决了这个问题File> Ivalidate cache / Restart...
如下图:
尝试使用 NDK
的更新版本。
我遇到了同样的问题。
我使用的是 NDK
版本 r17c
。使用 r21e
.
- Android 工作室版本:
4.1.3
- OS: Ubuntu
18.04.5