Dart2JS找不到导入包WebStorm

时间:2014-09-21 19:40:42

标签: dart webstorm dart-pub dart2js

我正在使用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可能有问题吗?

2 个答案:

答案 0 :(得分:1)

dart2js不是推荐的工作流程,可能是WebStorm 8中的错误。它将在即将发布的WebStorm 9中从上下文菜单中完全删除。使用“pub build”。

答案 1 :(得分:0)

我看不出有什么不对劲。我认为这只是

的情况之一
pub cache repair

可以提供帮助。