likes
comments
collection
share

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

作者站长头像
站长
· 阅读数 22

问题描述

当我试图使用 SAP 成都研究院 Business Application Studio 部署一个 SAP UI5 应用到 SAP Business Technology Platform 时,运行命令行 npm run deploy, 遇到如下错误消息:

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

Error retrieving MTA: Could not find MTA mta_archives/archive.mtar

问题分析

查找 SAP UI5 应用文件夹下面,确实没有这个名为 mta_archives/archive.mtar 的文件。

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

根据 template 创建应用时,如果可以选择 Multi-Target Application 模板,

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

则可以手动往这个 MTA 应用里添加 HTML5 module:部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

然后对应用进行 build,可以生成 mtar 文件,之后可以部署了。

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

回到我们的实际例子,确实可以从模板创建 MTA 应用:

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

但是现在我们已经有一个 Java 应用了。

首先把我们现在的项目代码提交到 Github 上:

https://4f8ae60dtrial.us10cf....

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

push 的时候报错:Git:fatal: No configured push destination

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

我们使用命令行 cds add mta 给 Java 应用自动生成一个 mta.yaml 文件:

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

自动生成了一个 mta.yaml 文件,里面包含了一个 Java module:

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

执行 mbt build 命令,会执行 mta.yaml 文件里定义的 build task部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

最后成功生成了 archive 文件:部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

以前我没有把这个 Java 应用使用 cds add mta 时,直接使用 cf push 进行的部署。

如今,使用 Deploy MTA Archive 菜单进行部署:

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

部署完毕后生成一个应用,但是显示 Error 提示:部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

点击 Application Routes 之后:

404 Not Found: Requested route ('4f8ae60dtrial-dev-bookstore-srv.cfapps.us10.hana.ondemand.com') does not exist.部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

很多错误:

Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

当我们用 cf push 部署单个 Java 应用时,使用的文件是 manifest.yaml:

---
applications:
- name: bookstore
  path: srv/target/bookstore-exec.jar
  random-route: true
  services:
  - bookstore-hana

在项目文件夹的 default-env.json 里,是包含了 SAP BTP 上 HANA Cloud instance 的 url 和 access credentials 等信息。

部署 SAP UI5 应用到 SAP BTP 时遇到的 error retrieving MTA 错

而 mta.yaml 文件里,根本没有把 Java 应用和 SAP BTP 上的 HANA Cloud instance 建立关联关系,所以启动时报 JDBC 的错误。

转载自:https://segmentfault.com/a/1190000041538220
评论
请登录