Ruo*_*Qin 5 java android intellij-idea android-studio
我目前正在使用 Android Studio 通过测试驱动开发方法开发多模块项目。一切进展顺利,直到我将 IDE 从之前的 Bumblebee 更新为 Android Studio Chipmunk。当我更新后打开项目时,似乎AS自动为我生成了一些模块。如图所示,[main] 和 [unitTest] 等新名称自动出现在项目视图中。 自动生成模块
之后,我发现我的生产代码的类和方法在我的测试代码中无法解析。在我按下 Alt+Enter 后,AS 告诉我应该将依赖项添加到生产代码的主模块中。它在 build.gradle 文件中添加了一行:“testImplementation project(path: ':app')”。同步 gradle 构建后,没有任何变化,它仍然无法解析我的生产代码中的方法。我仍然可以通过执行 gradle 测试任务来运行测试,但奇怪的是我不能直接在测试代码中使用生产代码。
更新:
有关更多信息,我认为这是由 Intellij 2021.1 更新到 2021.2 引起的问题,因为我重新安装了 AS Bumblebee 并且一切似乎都工作正常。我还在 JetBrains YouTrack 中发现了这个问题,它与我有完全相同的问题。这是链接:https://youtrack.jetbrains.com/issue/IDEA-275566/Class-not-found-after-intellij-upgrade-2021-1-2-2021-2
这个问题仍然悬而未决,我已经尝试了其他开发人员在这个问题中的回复来删除.iml文件,但问题仍然存在。我认为 Intellij 2021.1 和 2021.2 在 .idea 文件夹中生成不同的 .iml 文件。
我在第一个 Android Studio Chipmunk 版本中遇到了同样的问题 - 我的所有单元测试源代码都充满了“无法解析符号”错误,但代码仍然可以编译和运行,并且测试会通过。
我发现我可以通过在文件中添加一行来临时解决(即“修复”)该问题,build.gradle例如:
testImplementation project(path: ':shared:library:module')
Run Code Online (Sandbox Code Playgroud)
但今天我升级到了新的 Chipmunk 版本,详细信息如下:
Android Studio Chipmunk | 2021.2.1 Patch 1
Build #AI-212.5712.43.2112.8609683, built on May 18, 2022
Runtime version: 11.0.12+0-b1504.28-7817840 x86_64
VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o.
Run Code Online (Sandbox Code Playgroud)
并且该问题不再出现。我猜从事 IntelliJ 平台工作的人们发现并修补了这个问题。
| 归档时间: |
|
| 查看次数: |
857 次 |
| 最近记录: |