Dart `build_config` 重命名 `buildStep.inputId` 文件

Dart `build_config` rename `buildStep.inputId` file

我想重命名 Builder 中的一个文件(不仅仅是扩展名)。有什么理由我不应该基于 buildStep.inputId 创建自己的 File 并写入文件吗?

如果你这样做那么会发生很多奇怪的事情:

  • 它会导致一个新的构建(构建系统会认为你只是手动创建了一个文件)
  • 依赖关系变得很奇怪 - 该文件现在可以被任何其他构建器使用(即使是 运行 之前的构建器)。这可能会导致无限循环或其他异常情况。
  • 您的构建器无法移植到 build_runner
  • 之外的 bazel 或其他构建系统集成
  • 我们将来可能会完全阻止您这样做

基本上,您将绕过整个构建系统,并且行为变得不确定。