I'm trying to use the build_runner package to generate code in my project.
Nothing is getting generated with dart run build_runner build
How can I verify that my textBuilder is getting run? For example, is there a way that I can put some output statements into my textBuilder?
// lib/src/builder.dart
import 'package:build/build.dart';
import 'example.dart';
// how can I verify this code is getting run?
Builder textBuilder(BuilderOptions options) => TextBuilder();
or
// lib/src/example.dart
import 'dart:convert';
import 'package:build/build.dart';
class TextBuilder implements Builder {
@override
Map<String, List<String>> get buildExtensions => const {
'^assets/{{}}.json': ['lib/generated/{{}}.dart'],
};
@override
Future<void> build(BuildStep buildStep) async {
// how can I verify this code is getting run?
final inputId = buildStep.inputId;
final outputId = AssetId(
inputId.package,
inputId.path
.replaceFirst('assets/', 'lib/generated/')
.replaceFirst('.json', '.dart'),
);
final messages = (json.decode(await buildStep.readAsString(inputId)) as Map)
.cast<String, String>();
final outputBuffer = StringBuffer('// Generated, do not edit\n');
messages.forEach((key, value) {
outputBuffer.writeln('const String $key = \'$value\';');
});
await buildStep.writeAsString(outputId, outputBuffer.toString());
}
}
I've also tried setting the --verbose
flag for build, but it doesn't get any extra output:
$ dart run build_runner build --verbose
[INFO] Entrypoint:Generating build script...
[INFO] Entrypoint:Generating build script completed, took 278ms
[INFO] BuildDefinition:Initializing inputs
[INFO] BuildDefinition:Reading cached asset graph...
[INFO] BuildDefinition:Reading cached asset graph completed, took 88ms
[INFO] BuildDefinition:Checking for updates since last build...
[INFO] BuildDefinition:Checking for updates since last build completed, took 937ms
[INFO] Build:Running build...
[INFO] Build:Running build completed, took 6ms
[INFO] Build:Caching finalized dependency graph...
[INFO] Build:Caching finalized dependency graph completed, took 61ms
[INFO] Build:Succeeded after 75ms with 0 outputs (0 actions)