当电子 ABI 与已安装节点不同时,无法生成 TypeORM 迁移

Posted

技术标签:

【中文标题】当电子 ABI 与已安装节点不同时,无法生成 TypeORM 迁移【英文标题】:Unable to generate TypeORM migrations when electron ABI differs from installed node 【发布时间】:2021-12-21 16:45:11 【问题描述】:

目前从源代码构建 better-sqlite3 并且工作正常,但运行 typeorm migration:generate 最终失败,因为它使用了具有不同 ABI 版本的本地节点。如果可能的话,我宁愿不必在迁移之前/之后重建。据我所知,没有节点版本使用电子 ABI,而且从查看电子和节点版本来看,这看起来也很难总是排队。

我尝试执行以下操作无济于事,尽管它有助于运行开玩笑测试。

yarn ELECTRON_RUN_AS_NODE=true ./node_modules/.bin/electron -r ts-node/register ./node_modules/.bin/typeorm -f path/to/ormconfig.ts migration:generate -n MigrationName

编辑:通过修改解决这个问题:node_modules/typeorm/cli.js

对于 args 处理,将最后的 ".argv;" 替换为 ".parse(process.argv.slice(2));"

【问题讨论】:

【参考方案1】:

通过修改 node_modules/typeorm/cli.js 来解决这个问题,将 args 处理替换为 final

.argv;

.parse(process.argv.slice(2));

【讨论】:

以上是关于当电子 ABI 与已安装节点不同时,无法生成 TypeORM 迁移的主要内容,如果未能解决你的问题,请参考以下文章

无法创建 AVD - 没有可用的 CPU/ABI 系统映像

abigen工具利用ABI生成调用合约的go文件

abigen工具利用ABI生成调用合约的go文件

要求:安装 iRedMail 时 Centos 7 上的 python(abi) = 3.6

gentoo系统 gnome/sysytemd 桌面 无法安装firefox

以太坊的ABI编码