我正在使用WebStorm 8 IDE构建一个dart Web应用程序。我有以下目录结构:
root
web
main.dart
lib
packages
browser
intl
intl.dart
pubspec.lock
pubspec.yaml
在main.dart
我有以下导入声明:import "package:intl/intl.dart";
然而,当我尝试将main.dart
编译为javascript时,我收到以下错误:
dart2js
Error occurred:
/Path/To/Project/root/web/main.dart:2:8:
Error: Can't read 'package:intl/intl.dart' (Error reading '/Path/To/Project/root/web/packages/intl/intl.dart' (OS Error: No such file or directory, errno = 2)).
import "package:../packages/intl/intl.dart";
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Error: Compilation failed.
所以似乎dart2js在dart文件的当前目录中查找要转换的包,这是不正确的。
我尝试将导入语句更改为import "package:../packages/intl/intl.dart";
,但我收到同样的错误。
有没有人有任何想法?
更新:
我可以使用pub build
来构建我的项目并生成main.dart.js
。当我调用build时,不确定有什么不同,WebStorm可能有问题吗?
答案 0 :(得分:1)
dart2js不是推荐的工作流程,可能是WebStorm 8中的错误。它将在即将发布的WebStorm 9中从上下文菜单中完全删除。使用“pub build”。
答案 1 :(得分:0)
我看不出有什么不对劲。我认为这只是
的情况之一pub cache repair
可以提供帮助。