我有一個簡單的飛鏢項目,它的文件結構,如:爲什麼我不能在dir內運行dart文件?
darttest tree
.
├── packages
│ ├── browser -> /Users/freewind/.pub-cache/hosted/pub.dartlang.org/browser-0.5.20/lib
│ ├── meta -> /Users/freewind/.pub-cache/hosted/pub.dartlang.org/meta-0.5.20/lib
│ ├── start -> /Users/freewind/.pub-cache/hosted/pub.dartlang.org/start-0.0.8/lib
│ └── unittest -> /Users/freewind/.pub-cache/hosted/pub.dartlang.org/unittest-0.5.20/lib
├── pubspec.lock
├── pubspec.yaml
└── src
└── server.dart
它使用的庫start,並且是非常簡單的。
的pubspec.yaml:
name: darttest
dependencies:
start: any
的的src/server.dart:
import 'package:start/start.dart';
void main() {
start(public: 'web', port: 3000).then((Server app) {
app.get('/').listen((request) {
request.response
.header('Content-Type', 'text/html; charset=UTF-8')
.send('Hello, dart');
});
});
}
當我darttest目錄,然後運行:
➜ darttest dart src/server.dart
Unable to open file:
/Users/freewind/dev/workspace/darttest/src/packages/start/start.dart
'file:///Users/freewind/dev/workspace/darttest/src/server.dart': Error: line 1 pos 1:
library handler failed
import 'package:start/start.dart';
^
它試圖從darttest/src/packages/start/start.dart
找到start
,但實際上沒有這樣的文件,start
位於darttest/packages
的內部。
我是否必須將server.dart
置於項目的根部?這有什麼規定嗎?或者如何解決這個錯誤?
你使用Dart Editor嗎?您遺漏了/ package /文件夾的目錄鏈接。您可以通過在pubspec.yaml文件(上下文菜單)上運行「Pub Install」來創建它們。 – Fox32