封装不在 Dev Hub 组织上的外部客户端应用程序
要封装未在 Dev Hub 组织中创建的外部客户端应用程序,请使用命名空间将组织连接到 Dev Hub 组织。
所需的 Edition
| 适用于:Lightning Experience |
| 适用于:Professional、Performance、Unlimited 和 Developer Edition |
| 所需用户权限 | |
|---|---|
| 创建外部客户端应用程序 | 创建、编辑和删除外部客户端应用程序 |
创建外部客户端应用程序并配置源组织
-
创建可打包的外部客户端应用程序。
- 创建外部客户端应用程序
- 对于分发状态,选择已包装。
- 为组织配置命名空间。
-
要验证组织,请为组织选择名称,并使用 Salesforce CLI 运行此命令。
sf org login web -a <org name> -
运行此命令,将元数据拉入本地 Salesforce DX 项目。
sf project retrieve start --manifest package.xml -o <org name>
配置 Dev Hub 组织
-
启用 Dev Hub 组织。
- 从“设置”中,在快速查找框中,输入 Dev Hub 并选择 Dev Hub。
-
要启用 Dev Hub,单击启用。
在您启用 Dev Hub 后,您无法将其禁用。
- 启用解锁软件包/第二代受管软件包。
- 将组织中的命名空间与 Dev Hub 组织命名空间注册表中的外部客户端应用程序链接。
-
使用 Salesforce CLI 验证 Dev Hub。
sf org login web --set-default-dev-hub
创建第二代受管软件包
-
为 Salesforce DX 项目更新 project-scratch-def.json,以允许来自不同组织的外部客户端应用程序打包。添加此设置。
{ "settings": { "externalClientAppSettings": { "enablePackageEcaOauthFromDevOrg": true } } }如果不添加此设置,您会看到软件包版本创建错误。错误消息显示您无法在短暂的组织中创建外部客户端应用程序。
-
创建软件包。
sf package create --name "testpkg" --package-type Managed --path "force-app" -
创建软件包版本。
sf package version create --package "testpkg" --installation-key test1234 -f config/project-scratch-def.json -w 15
本文章是否解决您的问题?
请与我们共享您的想法,以便我们进行改进!

