パッケージと依存関係の管理
アプリの依存関係には2つのグループがあり、Vegaはそれらを異なる方法で管理します。このガイドでは、これら2種類の依存関係を解決してインストールするツールと、OSバージョンターゲットがパッケージバージョンを選択する仕組みについて説明します。
OS提供のVegaパッケージには、@amazon-devices/プレフィックスが付いています(例:@amazon-devices/kepler-camera)。[os.version]ターゲットは、アプリが使用できるVegaパッケージのバージョンを制限し、vega project installがそれらを解決します。reactやlodashなどの通常のnpmパッケージは、パッケージマネージャーを使用していつもの方法で解決します。
どちらの種類もパッケージマネージャーがインストールします。vega projectによってインストールされることはありません。代わりに、vega projectは、OSバージョンターゲットに合わせてOS提供パッケージの正しいバージョンを解決し、package.jsonに書き込みます。その後、開発者のパッケージマネージャー(npm、yarn、pnpmなど)を実行して、それらのダウンロードとインストールを行います。
解決、インストール、ビルドのチェーン
始める前に、manifest.tomlに[os.version]セクションがあることを確認してください。vega project install --fixは、このセクションに基づいてアプリのOSターゲットを解決します。そのため、このセクションがないとMissing OS Versionエラーが発生し、何も書き込まれません。セクションの作成と再調整を1つのコマンドで行うには、vega project install --fix --os-min 1.2 --os-version 1.2のように両方のフラグを追加します。セクションを追加するその他の方法については、マニフェストの[os.version]セクションを参照してください。
解決済みバージョンのプロジェクトをビルド済みアプリに移行するには、次のコマンドを実行します。
vega project install --fix
npm install
vega project doctor
npx react-native build-vega
-
vega project install --fixは、アプリの[os.version].targetと互換性がある各@amazon-devices/*依存関係の最新の公開バージョンを選択し、それらのバージョンをpackage.jsonに書き込みます。何もダウンロードしませんし、node_modulesフォルダを変更することもありません。 -
npm installは、vega project installが書き込んだバージョンをダウンロードして、インストールします。プロジェクトで既に使用されているパッケージマネージャーを使用してください。 -
vega project doctorは、ビルドの前にプロジェクトを検証します。検証に失敗すると0以外のコードで終了するため、そのコードをCIパイプラインでゲートとして使用できます。 -
npx react-native build-vegaはアプリをビルドし、vpkgを生成します。package.jsonでビルドスクリプトを使用することもできます。
すべてのコマンドとオプションの詳細については、Vega SDK CLIリファレンスを参照してください。
OSバージョンターゲットがパッケージバージョンを選択する仕組み
manifest.tomlの[os.version]セクションは、vega project installで解決するバージョンを指定します。
[os.version]
target = "1.2"
min = "1.2"
-
target-vega project installにより、各@amazon-devices/*パッケージは、このOSバージョンで利用可能な最新バージョンに解決されます。 -
min- アプリがサポートする最も古いOSバージョン。このツールは、minで指定されたOS提供モジュールを必須の[[needs.module]]エントリとして記録します。minで最初に指定されたモジュールからtargetまでのモジュールを、オプションの[[wants.module]]エントリとして記録します。コードでは、これらのモジュールが追加するAPIを保護し、minのデバイスでもアプリが実行されるようにする必要があります。
minとtargetはいずれも、"M.n"形式の文字列で正式なOSバージョンを指定する必要があります。Vegaは、たとえその値が数値的に正しい形式であっても、正式に定義されていない値は受け付けません。Vega SDK 0.24の時点では、正式に定義されているOSバージョンはOS 1.2のみです。minとtargetはどちらも1.2に設定してください。
詳細なフィールド定義、検証ルール、モジュール IDの形式については、マニフェストの[os.version]セクションを参照してください。
パッケージの追加、更新、再調整
次の表では、各アクションを実行するコマンドについて説明します。
| コマンド | アクション |
|---|---|
vega project install <パッケージ> |
新しい@amazon-devices/*パッケージを1つ追加します。 |
vega project install --fix |
現在のターゲットに合わせて、すべてのOSパッケージのバージョンを再調整します。 |
vega project update --os-version <バージョン> --dry-run |
実際に適用する前に、別のOSターゲットへの変更をプレビューします。 |
vega project update-manifest |
[os.version]を手動で編集した後、マニフェストのモジュールエントリを再生成します。 |
package.jsonを書き換えるコマンド(installやupdateなど)が終了したら、パッケージマネージャーを実行して変更のインストールと再ビルドを行います。
この場合、update-manifestは、package.jsonではなく、manifest.tomlの[[needs.module]]エントリと[[wants.module]]エントリを書き換えます。これを実行した後、新しいモジュールエントリに合わせてpackage.jsonを再調整するためにvega project install --fixを実行し、パッケージマネージャーを実行してから再ビルドします。
パッケージマネージャーの選択
vega projectコマンドはpackage.jsonのみを書き込みます。npm、yarn、pnpmを呼び出すことはありません。プロジェクトで既に使用されているパッケージマネージャーを使用してください。解決された@amazon-devices/*バージョンはプレーンなpackage.jsonエントリです。npm互換のパッケージマネージャーであれば、どれでも同じ方法でこれらのエントリをインストールします。
vega project installはインストールせずにpackage.jsonを書き込みます。その出力では、解決したパッケージでInstalledという単語が使用されますが、これらをダウンロードしてインストールするにはパッケージマネージャーを実行する必要があります。正確な出力については、vega project installを参照してください。関連トピック
Last updated: 2026年8月21日

