Yarnpkg bs平台版本不匹配

Yarnpkg bs平台版本不匹配,yarnpkg,reason,bucklescript,Yarnpkg,Reason,Bucklescript,我有一个全球bs平台安装和一个本地项目的本地安装。它们有不同的版本。直到今天一切都很好。每次尝试运行本地项目时,都会引发以下错误: bs-platform version mismatch Running bsb 5.0.4 (/home/jefferson/.nvm/versions/node/v12.4.0/lib/node_modules/bs-platform) vs vendored 4.0.5 (/home/jefferson/astrocoders/lion-carne-clien

我有一个全球
bs平台安装和一个本地项目的本地安装。它们有不同的版本。直到今天一切都很好。每次尝试运行本地项目时,都会引发以下错误:

bs-platform version mismatch Running bsb 5.0.4 (/home/jefferson/.nvm/versions/node/v12.4.0/lib/node_modules/bs-platform) vs vendored 4.0.5 (/home/jefferson/astrocoders/lion-carne-client/node_modules/bs-platform)

如何解决这个问题?我正在使用
纱线

您有几个选择:

  • 使用本地安装的软件包

    a。通过
    package.json
    中定义的脚本,使用
    warn run
    npm run

    b。通过
    npm
    附带的
    npx
    执行命令:
    npx bsb-make world

  • 使用全局安装的软件包,方法是将其链接到项目中,并覆盖任何本地安装的同名软件包,使用
    warn link bs platform
    npm link bs platform
    (每个项目只需要一次)<代码>节点\模块/bs平台
  • 将成为指向全局安装包的符号链接,因此在运行全局bsb时没有版本不匹配


    你是如何管理bsb的?通过脚本?不,我直接通过
    warn
    warn bsb-make world
    )运行它。当您像这样运行时,由于某种原因,确实选择了全局的,我要做的是将其添加到我的包中的“scripts”。json a“bs:build”:“warn bsb-make world”,因此,运行Thread bs:build将使Thread选择正确的二进制文件。我还做了类似于@fakenickels的事情,在我的例子中,我运行前缀为
    npx
    ,所以
    npx bsb
    的命令,以确保项目版本的BuckleScript是被使用的。