SAP Business Application Studio 里打开一个 SAP UI5 应用,选中 mta.yaml 文件进行构建:Build MTA Project
:
本文介绍选择了这个菜单之后,背后发生了哪些事情。
Executing task: mbt build -s '/home/user/projects/project1'; sleep 2; <
执行的命令行是 mbt build -s
,在 project1 根目录下执行该文件。
[2022-03-22 09:23:01] INFO Cloud MTA Build Tool version 1.2.7
MTa build tool 版本号 1.2.7
[2022-03-22 09:23:01] INFO generating the "Makefile_20220322092301.mta" file...
生成 mta 文件。
[2022-03-22 09:23:01] INFO done
[2022-03-22 09:23:01] INFO executing the "make -f Makefile_20220322092301.mta p=cf mtar= strict=true mode=" command...
调用 make 执行文件。
这两个文件都安装在 /extbin/bin 文件夹下。
[2022-03-22 09:23:01] INFO validating the MTA project
[2022-03-22 09:23:01] INFO validating the MTA project
[2022-03-22 09:23:01] INFO building the "sap-btp-project1-dest-content" module...
[2022-03-22 09:23:01] INFO the "sap-btp-project1-dest-content" module was not built because the "no-source" build parameter is set to "true"
这个 module 并没有被构建,因为参数 no-source
设置为 true:
[2022-03-22 09:23:01] INFO finished building the "sap-btp-project1-dest-content" module
[2022-03-22 09:23:01] INFO building the "sapbtpproject1" module...
[2022-03-22 09:23:01] INFO executing the "npm install" command...
......npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for [email protected]: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/@ui5/cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@https://registry.npmjs.org/fs... wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
up to date in 6.074s
64 packages are looking for funding
run npm fund
for details
[2022-03-22 09:23:08] INFO executing the "npm run build:cf" command...
npm WARN lifecycle The node binary used for scripts is /extbin/bin/node but npm is using /opt/nodejs/node-v14.17.6-linux-x64/bin/node itself. Use the --scripts-prepend-node-path
option to include the path for the node binary npm was executed with.
执行 npm run build:cf
:
[email protected] build:cf /home/user/projects/project1
ui5 build preload --clean-dest --config ui5-deploy.yaml --include-task=generateManifestBundle generateCachebusterInfo
上面这行命令定义在:
.info builder:builder Building project sap.btp.project1 not including dependencies...
info builder:builder (1/1) Building project sap.btp.project1
.info builder:builder application sap.btp.project1 (1/12) Running task escapeNonAsciiCharacters...
info builder:builder application sap.btp.project1 (2/12) Running task replaceCopyright...
info builder:builder application sap.btp.project1 (3/12) Running task replaceVersion...
info builder:builder application sap.btp.project1 (4/12) Running task generateFlexChangesBundle...
info builder:builder application sap.btp.project1 (5/12) Running task webide-extension-task-updateManifestJson...
info builder:builder application sap.btp.project1 (6/12) Running task generateManifestBundle...
info builder:builder application sap.btp.project1 (7/12) Running task generateComponentPreload...
.WARN lbt:bundle:Builder ** warning: module sap/btp/project1/utils/locate-reuse-libs.js requires top level scope and can only be embedded as a string (requires 'eval')
info builder:builder application sap.btp.project1 (8/12) Running task createDebugFiles...
info builder:builder application sap.btp.project1 (9/12) Running task uglify...
info builder:builder application sap.btp.project1 (10/12) Running task generateVersionInfo...
info builder:builder application sap.btp.project1 (11/12) Running task generateCachebusterInfo...
info builder:builder application sap.btp.project1 (12/12) Running task ui5-task-zipper...
info builder:builder Build succeeded in 1.6 s
info builder:builder Executing cleanup tasks...
[2022-03-22 09:23:11] INFO finished building the "sapbtpproject1" module
[2022-03-22 09:23:11] INFO building the "sap-btp-project1-app-content" module...
[2022-03-22 09:23:11] INFO copying files matching the [sapbtpproject1.zip,...] patterns from the "/home/user/projects/project1/dist" folder to the "/home/user/projects/project1/resources" folder
[2022-03-22 09:23:11] INFO copying the "sapbtpproject1.zip" pattern from the "/home/user/projects/project1/dist" folder to the "/home/user/projects/project1/resources" folder
[2022-03-22 09:23:11] INFO the build results of the "sap-btp-project1-app-content" module will be packaged and saved in the "/home/user/projects/project1/.project1_mta_build_tmp/sap-btp-project1-app-content" folder
[2022-03-22 09:23:11] INFO finished building the "sap-btp-project1-app-content" module
[2022-03-22 09:23:11] INFO generating the metadata...
[2022-03-22 09:23:11] INFO generating the "/home/user/projects/project1/.project1_mta_build_tmp/META-INF/mtad.yaml" file...
生成部署到 SAP Business Technology Platform 上的 MTA archive 文件。
[2022-03-22 09:23:11] INFO generating the MTA archive...
[2022-03-22 09:23:11] INFO the MTA archive generated at: /home/user/projects/project1/mta_archives/sap-btp-project1_0.0.1.mtar
[2022-03-22 09:23:11] INFO cleaning temporary files...
Terminal will be reused by tasks.