flutter pub run build_runner构建失败

谢小进*_*谢小进 6 dart visual-studio-code flutter

颤振版本:

flutter_macos_v1.9.1+hotfix.2-stable
Run Code Online (Sandbox Code Playgroud)

在终端中创建新项目:

flutter create myapp
Run Code Online (Sandbox Code Playgroud)

打开vscode,编辑pubspec.yaml

dependencies:
  json_annotation: ^3.0.0

dev_dependencies:
  build_runner: ^1.7.0
  json_serializable: ^3.2.2
Run Code Online (Sandbox Code Playgroud)

在终端中获取软件包:

flutter pub get
Run Code Online (Sandbox Code Playgroud)

新的/lib/user.dart和下面的填充:

import 'package:json_annotation/json_annotation.dart';

part 'user.g.dart';

@JsonSerializable()
class User extends Object {
  @JsonKey(name: 'seed')
  String seed;

  @JsonKey(name: 'results')
  int results;

  @JsonKey(name: 'page')
  int page;

  @JsonKey(name: 'version')
  String version;

  User(
    this.seed,
    this.results,
    this.page,
    this.version,
  );

  factory User.fromJson(Map<String, dynamic> srcJson) =>
      _$UserFromJson(srcJson);

  Map<String, dynamic> toJson() => _$UserToJson(this);
}
Run Code Online (Sandbox Code Playgroud)

flutter pub run build_runner build在终端中运行:

[INFO] Generating build script...
[INFO] Generating build script completed, took 321ms

[INFO] Creating build script snapshot......
[INFO] Creating build script snapshot... completed, took 10.4s

[INFO] Initializing inputs
[INFO] Building new asset graph...
[INFO] Building new asset graph completed, took 698ms

[INFO] Checking for unexpected pre-existing outputs....
[INFO] Checking for unexpected pre-existing outputs. completed, took 2ms

[INFO] Running build...
[SEVERE] json_serializable:json_serializable on lib/user.dart:

Invalid argument(s): Path must be absolute : dart:core
[SEVERE] json_serializable:json_serializable on lib/main.dart:

Invalid argument(s): Path must be absolute : dart:core
[SEVERE] json_serializable:json_serializable on test/widget_test.dart:

Invalid argument(s): Path must be absolute : dart:core
[INFO] Running build completed, took 1.5s

[INFO] Caching finalized dependency graph...
[INFO] Caching finalized dependency graph completed, took 36ms

[SEVERE] Failed after 1.6s
Run Code Online (Sandbox Code Playgroud)

为什么从来没有成功?

小智 29

尝试这个。

flutter pub get && flutter pub run build_runner build --delete-conflicting-outputs
Run Code Online (Sandbox Code Playgroud)


Sup*_*wan 28

我尝试了很多解决方案,但错误没有消失。flutter packages pub run build_runner watch命令运行时带有无尽的日志。

我删除了pubspec.lockflutter pub get再次运行并安装了依赖项并运行了上面的命令。此错误消失后。


Kha*_*han 17

在 pubsec.yaml 中添加依赖项,分析器:'0.39.14'

flutter clean
flutter pub cache repair
flutter pub run build_runner clean
Run Code Online (Sandbox Code Playgroud)

然后跑,

flutter pub run build_runner build
Run Code Online (Sandbox Code Playgroud)

  • 在“flutter pub run build_runner clean”之后添加“flutter pub get”,它对我有用! (2认同)

小智 8

我遇到了同样的问题,所以我只是先在类中保存更改(在您的案例User类中)。
然后我只是重试使用:

flutter pub run build_runner build
Run Code Online (Sandbox Code Playgroud)


Suh*_*air 8

flutter packages pub run build_runner build请在命令之前为模型类创建默认的空构造函数


小智 2

我遇到过同样的问题。

成功生成所有 *.g.dart 文件:

构建跑步者0.9.2

json_serialized 0.5.8+1

json_annotation 0.2.9+1