如何在Linux上构建Prisma Windows电子应用程序?



我们想要实现的是在我们的(linux)构建服务器上为我们的电子应用程序构建linux和windows安装程序。

安装Wine后,这基本工作,除了Prisma:

。Prisma依赖于特定于操作系统的二进制文件——因此,我们必须为每个平台提供正确的二进制文件。

Prisma查询引擎/Prisma客户端

这部分工作:我们将binaryTarget设置为我们的目标平台:binaryTargets = ["windows", "debian-openssl-1.1.x"].
当我们现在生成客户端(prisma generate)时,目标目录(node_modules/.prisma/client/)包含linux和windows的查询引擎:libquery_engine-debian-openssl-1.1.x.so.node,query_engine-windows.dll.node

Prisma Migration Engine

。在package.json中,我们只指定prisma依赖项,npm只会在node_modules/@prisma/engines/中安装当前操作系统的二进制文件,即:libquery_engine-debian-openssl-1.1.x.so.node,migration-engine-debian-openssl-1.1.x

我们如何让npm安装两个迁移引擎(即Windows和Linux)?

  • 相应设置PRISMA_CLI_BINARY_TARGETS:例如:PRISMA_CLI_BINARY_TARGETS=darwin,rhel-openssl-1.0.x npm install
  • 然后启动npm install
  • ,现在所有指定操作系统的二进制文件都应该存在于node_modules/@prisma/engines
    • 在我的情况下,这最初没有工作
    • 删除node_modules/@prisma/engines并重新启动npm install后,它工作了

最新更新