第二世代管理パッケージのプロジェクト設定ファイル
以下は、プロジェクト設定ファイルに指定可能なパラメータの一部です。その他のパラメータについては、「第二世代管理パッケージの高度なプロジェクト設定パラメータ」を参照してください。
| 名前 | 詳細 |
|---|---|
| ancestorId |
必須かどうかこのパッケージのパッケージバージョンをすでに昇格しているかどうかによって決まります。昇格している場合は、ancestorId または ancestorVersion を指定する必要があります。昇格していない場合は、このパラメータを指定する必要はありません。 指定がない場合のデフォルト: None なし。作成するパッケージバージョンの上位パッケージツリーの直接の親の ID。ancestorId では、パッケージバージョン 04t、またはパッケージバージョンの別名が必要です。上位を指定する場合、ancestorId または ancestorVersion を使用できます。例: 詳細は、「第二世代管理パッケージのプロジェクトファイルでの上位パッケージの指定」を参照してください。 |
| ancestorVersion |
必須かどうかこのパッケージのパッケージバージョンをすでに昇格しているかどうかによって決まります。昇格している場合は、ancestorId または ancestorVersion を指定する必要があります。昇格していない場合は、このパラメータを指定する必要はありません。 指定がない場合のデフォルト: None 作成するパッケージバージョンの上位パッケージツリーの直接の親のバージョン番号。major.minor.patch.build の形式を使用して上位バージョンを指定します。上位を指定する場合、ancestorId または ancestorVersion を使用できます。 例: 詳細は、「第二世代管理パッケージのプロジェクトファイルでの上位パッケージの指定」を参照してください。 |
| default |
必須かどうかはい (複数のパッケージディレクトリを指定した場合) 指定がない場合のデフォルト: true デフォルトのパッケージディレクトリを示します。force:source:pull を使用して開発組織 (スクラッチ組織またはソース追跡 Sandbox) からメタデータを取得する場合、メタデータはデフォルトのパッケージディレクトリに配置されます。 default を true に設定できるパッケージディレクトリは 1 つのみです。 |
| definitionFile |
必須かどうかいいえ 指定がない場合のデフォルト: None パッケージのメタデータに必要な機能や組織設定 (スクラッチ組織定義など) を指定するために使用される外部 .json ファイルへの参照。例: |
| namespace |
必須かどうかはい 指定がない場合のデフォルト: None 各自のパッケージとそのコンテンツを他の開発者のパッケージと区別するための 1 ~ 15 文字の英数字で構成される識別子。 |
| package |
必須かどうかはい 指定がない場合のデフォルト: None プロジェクトの json ファイルで指定されるパッケージ名。 |
| packageAliases |
必須かどうかいいえ 指定がない場合のデフォルト: このファイルは、パッケージまたはパッケージバージョンの作成時に Salesforce CLI によって別名で更新されます。既存のパッケージまたはパッケージバージョンのこのセクションを手動で更新することもできます。CLI の force:package コマンドを実行するときにわかりづらいパッケージ ID の代わりに別名を使用できます。 |
| path |
必須かどうかはい 指定がない場合のデフォルト: None。 パッケージメタデータが含まれている場所を force:package:create Salesforce CLI コマンドの --path 属性に指定します。 |
| seedMetadata |
必須かどうか いいえ 指定がない場合のデフォルト: None。 seedMetadata ディレクトリへのパスを指定します。 シードメタデータは、標準値セットでのみ使用できます。パッケージが標準値セットに連動している場合、値セットを含むシードメタデータディレクトリを指定できます。 例: |
| versionDescription |
必須かどうかいいえ 指定がない場合のデフォルト: None |
| versionName |
必須かどうかいいえ 指定がない場合のデフォルト: 指定しない場合、CLI ではバージョン名として versionNumber が使用されます。 |
| versionNumber |
必須かどうかはい 指定がない場合のデフォルト: None バージョン番号の書式は major.minor.patch.build です。たとえば、1.2.1.8 です。ビルド番号をパッケージの次に使用可能なビルドに自動的に増やすには、キーワード NEXT (1.2.1.NEXT) を使用します。 |
Salesforce CLI を使用してパラメータを指定すると、プロジェクト定義ファイルにリストされている値が上書きされます。
Salesforce DX プロジェクト定義ファイルは、JSON ファイルで、プロジェクトのルートディレクトリにあります。force:project:create CLI コマンドを使用して、基盤として使用可能なプロジェクトファイルを生成します。packageDirectories のパラメータは次のようになります。
1{
2 "namespace": "exp-mgr",
3 "sfdcLoginUrl": "https://login.salesforce.com",
4 "sourceApiVersion": "47.0",
5 "packageDirectories": [
6 {
7 "path": "util",
8 "default": true,
9 "package": "Expense Manager - Util",
10 "versionName": "Winter ‘20",
11 "versionDescription": "Welcome to Winter 2020 Release of Expense Manager Util Package",
12 "versionNumber": "4.7.0.NEXT",
13 "definitionFile": "config/scratch-org-def.json"
14 },
15 {
16 "path": "exp-core",
17 "default": false,
18 "package": "Expense Manager",
19 "versionName": "v 3.2",
20 "versionDescription": "Winter 2020 Release",
21 "versionNumber": "3.2.0.NEXT",
22 "ancestorVersion": "3.0.0.7",
23 "definitionFile": "config/scratch-org-def.json",
24 "dependencies": [
25 {
26 "package": "Expense Manager - Util",
27 "versionNumber": "4.7.0.LATEST"
28
29 },
30 {
31 "package" : "External Apex Library - 1.0.0.4"
32 }
33 ]
34 }
35 ],
36 "packageAliases": {
37 "Expense Manager - Util": "0HoB00000004CFpKAM",
38 "External Apex Library@1.0.0.4": "04tB0000000IB1EIAW",
39 "Expense Manager": "0HoB00000004CFuKAM"}
40}Salesforce DX プロジェクトが自動的に更新されないようにするには?
sfdx-project.json ファイルを自動更新したくない場合もあります。より詳細な制御が必要な場合、次の環境変数を使用して、プロジェクトファイルの自動更新を抑制します。
| コマンド | True に設定する環境変数 |
|---|---|
| force:package:create | SFDX_PROJECT_AUTOUPDATE_DISABLE_FOR_PACKAGE_CREATE |
| force:package:version:create | SFDX_PROJECT_AUTOUPDATE_DISABLE_FOR_PACKAGE_VERSION_CREATE |