构建数据库模块:在deploy @后安装脚本上失败

2020-08-15 11:34发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

当前,我正在看 T homas Jung的视频系列" SAP HANA开发人员基础" "。我已经安装了SAP HANA Exp。2.0 SPS04(作为VM)。会话5.1中的db-module的第一个构建以错误"在deploy @ postinstall脚本处失败"结束(请参阅日志图片)。

这是错误的控制台日志:

这是db-module的package.json内容:

 {
   " name":"部署",
   "依赖关系":{
     " @ sap/hdi-deploy":" ^ 3.8.2"
   },
   "引擎": {
     " node":" ^ 8"
   },
   "脚本":{
   " postinstall":" node .build.js",
     "开始":"节点node_modules/@sap/hdi-deploy/deploy.js"
   }
 }


 

这是相关build.js的内容:

//根据是否具有顶层package.json执行CDS构建。
//当CF/XSA buildpack调用我们时,Package.json不可用。 在这种情况下,我们什么都不做
//并假设我们的模型已经构建并且可以在此数据库应用程序中使用。
//
//这是一种解决方法,将由CDS生成数据库模块以及package.json的解决方案代替。


 const fs = require('fs');
 const childproc = require('child_process');


 如果(fs.existsSync('../package.json')){
    //在构建时为true,在CF过渡时为false
     childproc.execSync('npm install && npm run build',{
         cwd:'..',
         stdio:"继承"
     });
 }


 

==>用于HANA的SAP Web IDE在" const fs ..."行显示错误= ESLint ...保留了关键字" const"。 但是我认为这只是一个ESLint问题。

文件内容未更改(自动生成的内容)。

我刚刚发现,当我删除package.json中的" postinstall"行时,构建过程就开始成功了。 不知道,以后是否会成为问题。


有什么想法吗?

谢谢

KR

迈克尔

(42.4 kB)

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


你好

当前,我正在看 T homas Jung的视频系列" SAP HANA开发人员基础" "。我已经安装了SAP HANA Exp。2.0 SPS04(作为VM)。会话5.1中的db-module的第一个构建以错误"在deploy @ postinstall脚本处失败"结束(请参阅日志图片)。

这是错误的控制台日志:

这是db-module的package.json内容:

 {
   " name":"部署",
   "依赖关系":{
     " @ sap/hdi-deploy":" ^ 3.8.2"
   },
   "引擎": {
     " node":" ^ 8"
   },
   "脚本":{
   " postinstall":" node .build.js",
     "开始":"节点node_modules/@sap/hdi-deploy/deploy.js"
   }
 }


 

这是相关build.js的内容:

//根据是否具有顶层package.json执行CDS构建。
//当CF/XSA buildpack调用我们时,Package.json不可用。 在这种情况下,我们什么都不做
//并假设我们的模型已经构建并且可以在此数据库应用程序中使用。
//
//这是一种解决方法,将由CDS生成数据库模块以及package.json的解决方案代替。


 const fs = require('fs');
 const childproc = require('child_process');


 如果(fs.existsSync('../package.json')){
    //在构建时为true,在CF过渡时为false
     childproc.execSync('npm install && npm run build',{
         cwd:'..',
         stdio:"继承"
     });
 }


 

==>用于HANA的SAP Web IDE在" const fs ..."行显示错误= ESLint ...保留了关键字" const"。 但是我认为这只是一个ESLint问题。

文件内容未更改(自动生成的内容)。

我刚刚发现,当我删除package.json中的" postinstall"行时,构建过程就开始成功了。 不知道,以后是否会成为问题。


有什么想法吗?

谢谢

KR

迈克尔

(42.4 kB)
付费偷看设置
发送
9条回答
灬番茄
1楼-- · 2020-08-15 12:01

你好

对于全新安装的HANAExpress 2.0 SPS04二进制安装和node-gyp错误,我也遇到了同样的问题。

在意识到node-gyp需要gcc/g ++编译器并且默认情况下未在我的系统(openSUSE)上安装它之后,我安装了该编译器,并且可以正常工作!

此致

Andre

奄奄一息的小鱼
2楼-- · 2020-08-15 12:16

您的package.json看起来确实正确,但是您是否尝试从package.json中的" @ sap/hdi-deploy":依赖项中删除^。 该值是正确的,但似乎是错误中提到的字符。 它可能只会避免出现问题的征兆,但却可以带您解决问题的根源。 值得一试,看看会发生什么。

追夢秋陽
3楼-- · 2020-08-15 11:55

你好,

很抱歉迟到了。

我删除了字符,因此仅应使用" @ sap/hdi-deploy"软件包的确切版本。 另外,我再次添加了postinstall-row。

遗憾的是,构建过程仍然抛出相同的错误。

KR

Michael

Nir深蓝
4楼-- · 2020-08-15 11:55

由于删除.build.js似乎可以消除问题,因此,这似乎指向项目根目录中的package.json而不是其中的一个。 db文件夹是罪魁祸首。 您可以发布此package.json文件内容的任何机会。 顺便说一句,我在我的HANA Express实例上进行了测试,效果很好。

在处理来自package.json的通配依赖时,标签的错误是NPM本身产生的。 我不知道这是否会引起误解,或者在依赖项中的版本是否更笼统。 这就是为什么查看系统中生成了package.json会有所帮助的原因。

ZJXianG
5楼-- · 2020-08-15 12:09

你好,

我的新方法是启动并运行SAP HANA Express 2.0 SP04-VM(2.00.045.00.1575639312)的最新版本。

我再次进行了所有必要的锻炼步骤。 这次,postinstall-script没有问题。 下一步," build cds"也可以工作(是的:我在以前的VM版本中总共尝试了3次,但没有运气)。

我无法想象这是以前版本中的错误?!?

KR

Michael

clever101
6楼-- · 2020-08-15 12:11

嗨,Fulvio,

很抱歉,您的回答很晚。 我用的是旧的好酵母工具。

只需在命令行中输入" yast"并导航到

软件->软件管理。

也许您需要root权限。

还是使用zypper存储库检查软件存储库?

问候

一周热门 更多>