MATLAB ビルド ツールの概要
MATLAB® ビルド ツールは、タスクを一様かつ効率的に作成および実行するための標準のプログラミング インターフェイスが用意されているビルド システムです。たとえば、プロジェクト ルート フォルダー内の 1 つのビルド ファイルに、コードの問題を特定するタスク、テストを実行するタスク、およびツールボックスをパッケージ化するタスクを作成し、ビルド ツールを呼び出してこれらのタスクを実行できます。
タスクを含む計画の作成
プロジェクトのビルドを定義するには、プロジェクトのルート フォルダーにビルド ファイルを作成します。ビルド ファイルは、タスクを含む計画を作成する関数ファイルです。計画内の各タスクはビルド内の単一の作業単位を表し、以下の 3 つの基本的な特性をもちます。
名前 — タスクの名前は計画内のタスクを一意的に識別します。
依存関係 — タスクの依存関係は、タスクの実行前に実行する必要がある、計画内の他のタスクです。
アクション — タスクのアクションは、タスクの実行時に実行される関数を定義します。
計画を作成するには、ビルドファイルの main 関数に関数呼び出し buildplan(localfunctions) を含めます。次にタスク クラスまたはローカル タスク関数を使用して、タスクを計画に追加します。
タスク クラス — main 関数で、
matlab.buildtool.tasks名前空間内の組み込みタスク クラスまたはカスタム タスク クラスからタスクを作成し、計画に追加します。ローカル タスク関数 — ローカル タスク関数では、タスク クラスでは使用できないタスクの名前、オプションの説明、およびアクションを指定します。タスク関数はビルド ファイル内のローカル関数であり、その名前は単語 "Task" (大文字と小文字は区別されない) で終わります。
たとえば、現在のフォルダーに、3 つのタスクを含む buildfile.m という名前のビルド ファイルを作成します。組み込みタスク クラスを使用して "check" タスクと "test" タスクを作成し、ローカル タスク関数を使用して "archive" タスクを作成します。
function plan = buildfile import matlab.buildtool.tasks.CodeIssuesTask import matlab.buildtool.tasks.TestTask % Create a plan from task functions plan = buildplan(localfunctions); % Add a task to identify code issues plan("check") = CodeIssuesTask; % Add a task to run tests plan("test") = TestTask; % Make the "archive" task the default task in the plan plan.DefaultTasks = "archive"; % Make the "archive" task dependent on the "check" and "test" tasks plan("archive").Dependencies = ["check" "test"]; end function archiveTask(~) % Create ZIP file filename = "source_" + ... string(datetime("now",Format="yyyyMMdd'T'HHmmss")); zip(filename,"*") end
ビルド ファイルの作成方法の詳細については、Create and Run Tasks Using Build Toolを参照してください。
計画内のタスクの実行
buildtool コマンドまたは matlab.buildtool.Plan クラスの run メソッドのいずれかを使用して計画内のタスクを実行できます。
buildtoolコマンド — このコマンドを使用して、プロジェクトのビルド ファイルに定義されているタスクを実行します。ビルド ファイルの外部で計画を作成または変更した場合、またはビルドの結果にプログラムでアクセスする場合は、buildtoolを使用しないでください。runメソッド — プロジェクトのビルド ファイルの外部で計画を作成または変更した場合、またはビルドの結果にプログラムでアクセスする場合は、このメソッドを使用します。このメソッドはmatlab.buildtool.BuildResultオブジェクトを返します。このオブジェクトには、ビルドおよびビルドの一部だった各タスクに関する情報が含まれます。
タスクを実行するために、ビルド ランナーはまずそのすべての依存関係を実行してから、対応する Task オブジェクトの Actions プロパティに表示される順序でタスクのアクションを実行します。
たとえば、現在のフォルダー内のファイル buildfile.m で作成された計画内の既定のタスクを実行します。ビルド ツールはまず "check" タスクおよび "test" タスクを実行します。これは、"archive" タスクがそれらのタスクに依存しているためです。現在のフォルダーおよびそのサブフォルダーに含まれているファイルによって結果は異なることがあります。
buildtool
** Starting check
Analysis Summary:
Total Files: 3
Errors: 0 (Threshold: 0)
Warnings: 0 (Threshold: Inf)
** Finished check
** Starting test
...
Test Summary:
Total Tests: 3
Passed: 3
Failed: 0
Incomplete: 0
Duration: 0.13274 seconds testing time.
** Finished test
** Starting archive
** Finished archiveMATLAB ツールストリップから、ビルド ファイル内のタスクを対話形式で実行することもできます。詳細については、Run Build from Toolstripを参照してください。 (R2025a 以降)