Я хочу создать Builder
, который бы создал Env
класс на лету. Этот класс должен быть доступен для импорта в любом месте моего проекта. Это контейнер для констант среды, определенных в build.yml
Сам строитель работает нормально, выдает желаемый результат, однако при запуске
pub run build_runner build
сборка завершается со следующим сообщением
[SEVERE] build_web_compilers: точка входа в web / main.dart: невозможно
найти модули для некоторых источников, это обычно является результатом
плохой импорт, отсутствующая зависимость в пакете (или, возможно,
dev_dependency необходимо перейти к реальной зависимости) или ошибка сборки
(при импорте сгенерированного файла).
Пожалуйста, проверьте следующий импорт:
import
'../.dart_tool/build/generated/buildertest/lib/environment.g.dart';
от buildertest | web / main.dart в 2: 1
[INFO] Выполнение сборки завершено, требуется 4,1 с [INFO] Кэширование завершено
График зависимости завершен, потребовалось 450 мс [SEVERE] Не удалось через 4.6 с
импорт сам по себе в порядке, так как он работает нормально, когда я запускаю следующий фрагмент
import '../.dart_tool/build/generated/buildertest/lib/environment.g.dart';
void main() {
print("Name:${Environment.name}");
print("Endpoint:${Environment.endpoint}");
}
с
dart web/main.dar
т
Что нужно сделать, чтобы этот импорт был действительным ??
Вот build.yaml
targets:
$default:
builders:
angular_components|scss_builder:
enabled: True
env|builder:
options:
name: "default"
endpoint: "http://example.org"
enabled: true
builders:
env|builder:
import: "env/EnvBuilder.dart"
builder_factories: ["builderFactory"]
is_optional: false
build_extensions:
"$lib$": ["environment.g.dart"]
auto_apply: root_package
runs_before: ["build_test:test_bootstrap","build_modules:module_library","build_modules:dartdevc","build_web_compilers:ddc","build_modules:vm","build_modules:dart2js","build_web_compilers:entrypoint"]