使用Bazel构建NextJs应用程序

5gfr0r5j  于 2022-10-21  发布在  其他
关注(0)|答案(1)|浏览(172)

在NextJs项目的Bazel构建过程中,我收到了一个与cjs reaction相关的错误。

Generating static pages (0/3)TypeError: Cannot read properties of null (reading 'useContext')
    at Object.exports.useContext (apps/landing/node_modules/react/cjs/react.production.min.js:24:118)

程序包的构建文件如下所示:

load("@landing-npm//next:index.bzl", "next")

filegroup(
    name = "config",
    srcs = [
        ".eslintrc.json",
        "next.config.js",
        "next-env.d.ts",
        "package.json",
        "tsconfig.json",
        "yarn.lock",
    ],
)

filegroup(
    name = "project",
    srcs = glob([
        "pages/**/*.ts",
        "pages/**/*.tsx",
        "public/*",
        "styles/*",
    ]),
)

next(
    name = "build",
    args = [
        "build",
        "apps/landing",
    ],
    data =
        [
            "config",
            "project",
            "@landing-npm//:node_modules",
        ],
)

此外,工作区已经使用NODE_VERSION=16.15.1和YAYN_VERSION=1.22.19的存储库加载了Rules_NodeJS
应用程序/登陆是使用下一个CLI创建的项目--类型脚本默认配置创建的。
我将所有NODE_MODULES依赖项作为数据传递,所以我认为它与丢失的依赖项无关。有没有人知道是什么造成了这个错误,以及如何解决它?

yacmzcpb

yacmzcpb1#

请参阅此问题https://github.com/vercel/next.js/issues/9022。并将NPM/Yarn包安装移至项目根文件夹。

yarn_install(
    name = "npm",
    exports_directories_only = True,
    package_json = "//:package.json",
    yarn_lock = "//:yarn.lock",
)

相关问题