メインコンテンツにスキップ

dart run

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

プログラム名がパッケージ名と一致しない場合は、<パッケージ名>:<プログラム名>の形式を使用します。たとえば、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()関数に引数を渡すには、コマンドの末尾に指定します。

dart run tool/debug.dart arg1 arg2

現在のパッケージのメインプログラムを実行している場合は、パッケージ名を追加します。fooパッケージの最上位ディレクトリにいるときに、引数付きでbin/foo.dartを実行する例は次のとおりです。

dart run foo arg1 arg2

デバッグ

#

デバッグを有効にするには、dart runコマンドに次のいずれかの一般的なデバッグオプションを追加します。

  • assertステートメントを有効にするには、--enable-assertsフラグを追加します。

    dart run --enable-asserts tool/debug.dart
  • Dart DevToolsを介したデバッグとパフォーマンス分析を有効にするには、--observeフラグを追加します。

    dart run --observe tool/debug.dart

    Dart DevToolsを使用したデバッグの詳細については、コマンドラインアプリでのDevToolsの使用を参照してください。

その他のデバッグオプションの詳細については、dart run --helpを実行してください。

実験的な機能の有効化

#

現在開発中の新しい機能や拡張機能を有効にするには、実験フラグを使用します。