【问题标题】:Generate a Json Serializable Generator using Build Runner in Flutter: Response is Succeeded, but no output is being generated在 Flutter 中使用 Build Runner 生成 Json Serializable Generator:响应成功,但没有生成输出
【发布时间】:2019-07-21 23:44:45
【问题描述】:

我在尝试使用 Dart 中的 Build Runner 生成 Json Serializable Generator 时遇到问题。首先,我尝试运行flutter packages pub run build_runner build 来生成Json Serializable,但它表明它有一个冲突的问题。所以我运行命令--delete-conflicting-outputs,来解决冲突的问题。

之后,我尝试再次运行 flutter packages pub run build_runner build 以重新生成 Json 值。但是我得到的结果是这样的:

succeeded with no outputs

所以输出是:[INFO] Succeeded after 137ms with 0 outputs (0 actions)

我因此感到压力很大,因为所有生成的文件都被删除了。有人可以告诉我发生了什么以及如何解决这个问题吗?

我到处检查,但仍然没有找到答案。

【问题讨论】:

  • 最好将输出作为文本而不是图像。
  • 您是否在课程中添加了@JsonSerializable() 注释?您是否创建了build.yaml,如果是,它包含什么?
  • 是的,我添加了一个@JsonSerializable()。但我没有创建 build.yaml,我只有 pubspec.yaml,在我运行 --delete-conflicting-outputs 之前没问题

标签: json dart flutter json-serialization


【解决方案1】:

确保 .g.dart 的名称写得正确。

我遇到了同样的问题来到这里寻找解决方案,当没有找到解决方案时,我注意到要生成的文件的名称区分大小写。

【讨论】:

    【解决方案2】:

    对我来说,/lib 或 /bin 目录下没有文件。

    清单

    这是一个checklist of things to check,当 Json_serializable 生成器成功但没有输出,但没有生成文件时。

    【讨论】:

      【解决方案3】:
      flutter pub run build_runner watch --delete-conflicting-outputs
      

      【讨论】:

      • 请考虑对该命令的确切用途添加一些解释
      • 你拯救了我的一天。有用。它根据最新的变化生成 fromJson 和 toJson 方法。令人惊讶的是,默认情况下它不会在构建过程中生成:O
      【解决方案4】:

      你应该更新你的 pubspec

      dependencies:
        # Your other regular dependencies here
        json_annotation: <latest_version>
      
      dev_dependencies:
        # Your other dev_dependencies here
        build_runner: <latest_version>
        json_serializable: <latest_version>
      

      然后运行flutter pub run build_runner build

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-07-15
        • 2018-06-30
        • 2016-03-16
        • 2021-08-17
        • 2015-04-07
        相关资源
        最近更新 更多