错误:在启用 ui5-tooling 时无法从 resources/sap/ushell/library.js 加载“sap/ushell/library.js” 重现症状说明

问题描述

我为 ui5-tooling 克隆了 demo 项目并成功运行它。 但是如果我对项目做一点改动,就会出现一些错误

重现

我对 manifest.json 做了一些改动,如下所示:

"sap.ui5": { "dependencies": { "libs": { "sap.ui.core": { "lazy": false },"sap.m": { "lazy": false },"sap.ui.layout": { "lazy": false },"sap.ui.unified": { "lazy": false },"sap.ushell": { "lazy": false } } },

添加一个库“sap.ushell”。 然后再次运行 opa:'ui5 serve -o'

症状

opa无法运行,在chrome的开发者工具中,发现错误错误:无法从资源/sap/ushell/library.js 加载“sap/ushell/library.js”:404 - 未找到...

说明

我进行此更改是因为当我尝试为现有项目启用 ui5 工具时,我无法成功运行 OPA。 如果我通过“ui5 add”手动添加lib,则会出现更多错误,例如“找不到文件:/resources/sap/ui/core/themes/sap_belize/base.less”

解决方法

lib sap.ushell 仅在 SAPUI5 中可用,因为它不是开源的。

从 UI5 工具 specVersion 2.x 开始,您可以定义应用应在 SAPUI5 文件中使用 OpenUI5 还是 ui5.yaml

  1. 按照 https://sap.github.io/ui5-tooling/pages/GettingStarted/ 中提到的步骤
  2. sap.ushell 添加到库列表中。
    ui5 add sap.ushell
    

您可以仔细检查该库是否已添加到 ui5.yaml 文件中。还要确保 specVersion 为 2.x 并且 framework 设置为 SAPUI5