內容

dart run 指令支援從指令列執行 Dart 程式,該程式可以位於檔案、目前套件或目前套件的其中一個相依項中。此指令提供之前在 pub run 和 Dart VM 工具中的功能。若要從任意位置執行程式,請使用 pub global 指令。

dart run [options] [<DART_FILE> | <PACKAGE_TARGET>] [args]

以下是建立新應用程式並執行的範例

$ dart create myapp
$ cd myapp
$ dart run

執行 Dart 檔案

#

您可以透過傳遞相對路徑來執行 Dart 檔案

$ dart run tool/debug.dart

執行套件中的程式

#

本節中的說明假設您從 Dart 套件頂端的目錄 (目前套件) 執行 dart run 指令。有關 Dart 套件目錄結構的資訊,請參閱 套件配置慣例

在依賴的套件中

#

您可以執行目前套件所依賴的任何套件的 bin 目錄中所散發的程式。若要執行此類程式,請指定所依賴的套件名稱和程式名稱。如果程式名稱與套件名稱相同,您可以省略程式名稱。

例如,假設您位於依賴 bar 套件的套件頂端目錄中。若要執行 bar 套件中的主程式 (bin/bar.dart),您可以使用此指令

$ dart run bar

如果程式名稱與套件名稱不符,請使用 <package name>:<program name> 格式。例如,若要執行 bar 套件中的程式 bin/baz.dart,請使用此指令

$ dart run bar:baz

bin 目錄是唯一具有可見程式的地方。所依賴套件中的所有其他目錄都是私密的。

在目前的套件中

#

當目前目錄與套件名稱相符時 (亦即,您位於與 pubspec 中的 name 屬性相符的目錄中),您可以省略套件名稱。如果程式名稱與套件名稱相符 (亦即,它是主程式),您也可以省略程式名稱。

以下是 dart run 的最簡短格式,它會執行目前套件的主程式。例如,如果您位於 foo 套件的頂端目錄中,此指令會執行 bin/foo.dart

$ dart run

如果程式名稱與套件名稱不符,請加入冒號和程式名稱。例如,此指令會執行目前套件中的 bin/baz.dart

$ dart run :baz

若要執行目前套件中但不在 bin 目錄中的程式,請傳遞相對路徑 (如前所示)

$ dart run tool/debug.dart

提供引數給 main()

#

若要提供 引數給 main() 函式,請將它們放在指令的結尾

$ dart run tool/debug.dart arg1 arg2

當您執行目前套件的主程式時,請加入套件名稱。以下是執行 bin/foo.dart 並提供引數的範例,此時您位於 foo 套件的頂端目錄中

$ dart run foo arg1 arg2

偵錯

#

若要啟用偵錯,請將以下其中一個或多個常見偵錯選項新增至你的 dart run 指令

若要深入了解其他偵錯選項,請執行 dart run --help

啟用實驗性功能

#

若要啟用目前正在開發中的新功能和強化功能,請使用 實驗旗標