Dart SassBuilder 找不到 Logger
Dart SassBuilder cannot find Logger
我正在尝试 运行 一个 angular 网络应用程序。我已经克隆了确认的工作项目,但是当我 运行 pub get
我得到以下错误:
/usr/lib/dart/bin/pub get
Resolving dependencies...
Got dependencies!
Precompiling dependencies...
Loading source assets...
Loading angular, sass_builder and dart_to_js_script_rewriter transformers...
Error on line 26, column 5 of ../../.pub-cache/hosted/pub.dartlang.org/angular_components-0.8.0/pubspec.yaml: Error loading transformer: 'package:sass_builder/sass_builder.dart': malformed type: line 34 pos 20: cannot resolve class 'Logger' from 'SassBuilder'
final _log = new Logger('sass_builder');
^
outputExtension: .scss.css
^^^^^^^^^^^^^^^^^^^^^^^^^^^
Process finished with exit code 0
我的pub.yaml
:
name: ZwinnexD
description: A web app that is a web app
version: 0.21.37
#homepage: https://www.example.com
#author: Kod Schrödingera <email@example.com>
environment:
sdk: '>=1.24.0 <2.0.0'
dependencies:
angular: ^4.0.0
angular_components: ^0.8.0
firebase: ^4.0.0
dev_dependencies:
angular_test: ^1.0.0
browser: ^0.10.0
dart_to_js_script_rewriter: ^1.0.1
test: ^0.12.0
transformers:
- angular:
entry_points:
- web/main.dart
- test/**_test.dart
- test/pub_serve:
$include: test/**_test.dart
- dart_to_js_script_rewriter
# Uncomment the following in sdk 1.24+ to make pub serve
# use dartdevc (webdev.dartlang.org/tools/dartdevc).
#web:
# compiler:
# debug: dartdevc
我正在使用 dart 1.24.3。
我试过删除 pub-cache,进行缓存修复,甚至重新安装 Dart。没有任何帮助。我在 Ubuntu 16.04 上工作。请帮忙。
我还可以确认 WebStorm 的基本项目也不起作用。我不确定除了卸载和安装 dart 我还能做什么...
到目前为止,我发现在 pub-cache 中编辑 SassBuilder
class 可以解决问题。您只需要从此更改记录器的导入
import 'package:logging/logging.dart';
对此:
import 'package:logging/logging.dart' as Log;
并从中更改记录器构造函数:
final _log = new Logger('sass_builder');
对此:
final _log = new Log.Logger('sass_builder');
我现在不知道更好的解决方案。
它是 sass-builder 中的问题。要修复它,请在 pubspec.yaml 中使用 sass_builder: ^1.1.5
或更高版本。这是 pull request 已修复。
同时,您可以将 sass 1.0.0-beta.5.3
添加到 pubspec.yaml
和 运行 pub get
dependency_overrides:
sass: 1.0.0-beta.5.3