メインコンテンツ

MATLAB パッケージおよびパッケージの依存関係

R2026b

他のユーザーと共有する準備ができた MATLAB® コードがある場合は、パッケージを使用してコードをバンドルして配布できます。MATLAB パッケージ マネージャーは、パッケージの作成、パッケージの依存関係の管理、およびエンド ユーザーとのパッケージの共有をプログラムによって行うための方法です。

パッケージの作成は、多くの場合、開発プロセスの最終ステップの 1 つです。推奨される完全なワークフローについては、Develop and Share Software in MATLABを参照してください。

代わりに、MATLAB、Simulink®、またはその他の MathWorks® 製品またはサポート パッケージをインストールする場合は、非対話形式でのサポート パッケージのインストールを参照してください。

パッケージを使用する理由

パッケージは、配布用にコードをバンドルするのに便利です。MATLAB パッケージ マネージャーは、パッケージの作成と配布を行うための合理化されたシステムを提供し、堅牢な依存関係管理機能を備えています。MATLAB パッケージ マネージャーを使用することで、コードをパッケージにバンドルし、パッケージ リポジトリを介して配布できます。エンド ユーザーはこれらのパッケージ リポジトリでパッケージを検索してインストールできます。エンド ユーザーがリポジトリからパッケージをダウンロードすると、MATLAB パッケージ マネージャーが必要な依存関係をすべてダウンロードします。

TOML ベースのプロジェクトでパッケージ コードを開発した場合は、対話的にパッケージを作成することもできます。プロジェクトは、開発作業用の構造化された環境を提供し、パス管理、環境の一貫性、依存関係の自動分析などの系統立ったサポートを備えています。詳細については、プロジェクトの作成を参照してください。既存のプロジェクトを TOML 形式に変換する方法については、Convert Existing Projects to TOML Formatを参照してください。 (R2026b 以降)

パッケージとは

パッケージは、MATLAB コード、関連ファイル、およびパッケージ ID と依存関係を定義するパッケージ定義ファイルのコレクションです。パッケージの目的は、コードをコンパートメント化して、意図した機能を維持しながらコードを共有できるようにすることです。R2026b 以降、パッケージは、以前はツールボックス ファイルと呼ばれていた単一のインストール可能なパッケージ ファイル (.mltbx) またはフォルダーベースのパッケージとしてビルドできます。パッケージを対話的にビルドする方法については、Interactively Create and Share Packagesを参照してください。フォルダー ベースのパッケージをプログラムによってビルドする方法については、Programmatically Turn Your Code Into a Packageを参照してください。

A package containing code and other files

パッケージは、パッケージのファイルと "メンバー フォルダー" が含まれる "ルート フォルダー" で構成されます。ルート フォルダーには resources フォルダーも含まれており、その中に mpackage.json という名前のパッケージ定義ファイルが含まれています。

パッケージ定義ファイルには、識別情報、説明情報、およびパッケージのプロパティが含まれています。識別情報には、パッケージ名、バージョン、および一意の識別子を含めることができます。説明情報には、パッケージの目的、プロバイダー、MATLAB リリースの互換性の概要を含めることができます。パッケージのプロパティには、パッケージのステータス、メンバー フォルダー、および依存関係を含めることができます。

パッケージの定義後、パッケージ ファイル (.mltbx) をビルドすると、MATLAB パッケージ マネージャーはパッケージのルート フォルダーとその内容を単一の共有可能なファイルに保存します。エンド ユーザーはこのファイルをダブルクリックしてインストールできます。

パッケージをインストールすると、MATLAB パッケージ マネージャーは、コード、サポート ファイル、および依存するその他のパッケージをすべてインストールします。また、MATLAB パッケージ マネージャーはルート フォルダーおよびすべてのメンバー フォルダーをパスに追加します。パッケージの検索とインストールについては、プログラムによるパッケージの検索とインストールを参照してください。

自動的なパッケージの依存関係管理

一部のパッケージでは、別のパッケージに含まれるコードが使用されます。このようなパッケージはその別のパッケージに "依存" しており、その別のパッケージは "依存関係" と呼ばれます。MATLAB パッケージ マネージャーは、堅牢な依存関係管理の一環として、パッケージをインストールする際に、必要なすべての依存関係もインストールされているかを確認します。次の図では、パッケージ A はパッケージ B に依存し、パッケージ B はパッケージ C と D に依存しています。MATLAB パッケージ マネージャーは、パッケージ A をインストールする際に、パッケージ B、C、D がまだインストールされていない場合、それらのパッケージもインストールします。

Package dependencies. Package A depends on package B. Package B depends on packages C and D

パッケージをアンインストールする場合、MATLAB パッケージ マネージャーはパッケージの各依存関係をチェックし、使用されていない場合はアンインストールします。依存関係は、直接インストールされておらず、それに依存しているインストール済みパッケージが存在しない場合、使用されていないとみなされます。

パッケージ リポジトリ

配布準備が整ったパッケージを、MathWorks File Exchange などのリポジトリに追加できます。エンド ユーザーはリポジトリでパッケージを検索してインストールできます。パッケージ リポジトリは、パッケージを配布するために使用できる指定場所です。MATLAB は既知のリポジトリのリストを保持しています。mpmsearch を使用してパッケージを検索したり、mpminstall を使用してパッケージをインストールしたりすると、MATLAB パッケージ マネージャーは既知のリポジトリでパッケージを検索します。

MathWorks File Exchange 上のパッケージは、[アドオン] パネルを介して対話的に検索してインストールすることもできます。詳細については、アドオンの取得と管理を参照してください。 (R2026b 以降)

Installing a package from a package repository

mpmListRepositories を使用して、既知のリポジトリの現在のリストを表示します。mpmAddRepository および mpmRemoveRepository を使用して、既知のリポジトリのリストへのリポジトリの追加と、リストからのリポジトリの削除を行います。詳細については、Distribute Packages Using Folder-Based Repositoriesを参照してください。

参考

オブジェクト

関数

トピック