首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生成Mocks时颤振Build_Runner生成失败

生成Mocks时颤振Build_Runner生成失败
EN

Stack Overflow用户
提问于 2022-08-05 13:07:39
回答 2查看 1K关注 0票数 9

运行build_runner以使用Mockito包生成模拟失败。

终端输出:

信息生成构建脚本..。信息生成生成脚本完成,使用2.2 信息预编译构建脚本.警告/D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/mockito-5.3.0/lib/src/builder.dart:412:19:错误:未为类“LibraryElement”定义getter 'libraryExports‘。

  • 'LibraryElement‘来自于’package:analyzer/dart/element/Element.DAT‘LibraryElement尝试将名称更正为现有getter的名称,或定义名为“libraryExports”的getter或字段。/D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/mockito-5.3.0/lib/src/builder.dart:413:19:错误:未为类“库元素”定义getter 'libraryImports‘。
  • 'LibraryElement‘来自于’package:analyzer/dart/element/Element.DAT‘LibraryElement尝试将名称更正为现有getter的名称,或定义名为“libraryImports”的getter或字段。/D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/mockito-5.3.0/lib/src/builder.dart:1493:36:错误:未为类“参数元素”定义getter 'enclosingElement2‘。
  • 'ParameterElement‘来自于’package:analyzer/dart/element/Element.DAT‘ParameterElement尝试将名称更正为现有getter的名称,或者定义一个getter或名为“capsingElement2”的字段。最后一种方法= parameter.enclosingElement2!;^ /D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/mockito-5.3.0/lib/src/builder.dart:1524:30:错误:未为类“参数元素”定义getter 'enclosingElement2‘。
  • 'ParameterElement‘来自于’package:analyzer/dart/element/Element.DAT‘ParameterElement尝试将名称更正为现有getter的名称,或者定义一个getter或名为“capsingElement2”的字段。最后一种方法= parameter.enclosingElement2为MethodElement;^MethodElement错误:未为类“method defined”定义getter 'enclosingElement2‘。
  • 'MethodElement‘来自于’package:analyzer/dart/element/Element.DAT‘MethodElement尝试将名称更正为现有getter的名称,或者定义一个getter或名为“capsingElement2”的字段。final class_ = method.enclosingElement2为ClassElement;^ClassElement错误:未为类“ExecutableElement”定义getter 'enclosingElement2‘。
  • 'ExecutableElement‘来自于’package:analyzer/dart/element/Element.DAT‘ExecutableElement尝试将名称更正为现有getter的名称,或者定义一个getter或名为“capsingElement2”的字段。^ /D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/mockito-5.3.0/lib/src/builder.dart:1934:23:错误:未为类“元素”定义getter 'enclosingElement2‘。
  • 'Element‘来自于’package:analyzer/dart/element/Element.DAT‘('/D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/analyzer-3.4.1/lib/dart/element/element.dart').尝试将名称更正为现有getter的名称,或者定义一个getter或名为“capsingElement2”的字段。var className = enclosingElement2!.name;^.name错误:未为类“元素”定义getter 'enclosingElement2‘。
  • 'Element‘来自于’package:analyzer/dart/element/Element.DAT‘('/D:/flutter_windows_1.22.5-stable/flutter/.pub-cache/hosted/pub.dartlang.org/analyzer-3.4.1/lib/dart/element/element.dart').尝试将名称更正为现有getter的名称,或者定义一个getter或名为“capsingElement2”的字段。变量className = enclosingElement2!.name;^ INFO预编译生成脚本已完成,花费了22.4秒

严重失败,无法预编译构建脚本. .dart_tool/ build /entrypoint/build.dart。这很可能是由配置错误的构建器定义造成的。

我尝试将分析器依赖项重写为1.5.0,但它会导致与项目中其他依赖项的冲突。

运行颤振医生在终端中显示相同的错误。

EN

回答 2

Stack Overflow用户

发布于 2022-08-05 17:04:26

这与升级到mockitov5.3.0有关,dart pub upgrade可能会解决这个问题。如果不是,请将mockito版本恢复为5.2.0,它应该可以工作。

没有mockito: 5.2.0^

票数 8
EN

Stack Overflow用户

发布于 2022-08-05 19:01:37

这个问题是由analyzer包引起的,它被用作mockito的依赖项。

看起来像是新版本的4.4.0 不推荐几个API

我现在为修复它所做的(直到维护人员在包上修复它)是将analyzer作为对我的pubspec.yaml的一个依赖项,使用最新的稳定版本4.3.1,并且它现在可以工作了。

代码语言:javascript
复制
dev_dependencies:
  analyzer: 4.3.1

希望这能有所帮助

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73250297

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档