0

我有一个已发布到 AWS CodeArtifact 的私有 npm 包,因此我可以在 ReactJS 应用程序和 NodeJS/Express API 应用程序中使用它。

此包的 1.0.0 版已发布到 CodeArtifact。

在我的 ReactJS 应用程序中,我在 package.json 中有一个依赖项为 "@name-space/name-of-package": "^1.0.0"

我已将 @name-space 的注册表更改为指向 CodeArtifact URL。对于所有其他包,我仍在使用默认的 NPM 注册表 ( https://registry.npmjs.com )。我通过我的 ReactJs 项目中的 .npmrc 文件进行了配置。

当我尝试通过 AWS Amplify 部署我的 ReactJS 应用程序时,我在构建中收到错误: ERR!无效版本:^1.0.0

我对我在这里使用的几乎所有东西都是新手——创建私有包、CodeArtifact 和 Amplify,所以我不确定我是否遗漏了任何步骤。

我尝试从 ReactJS package.json 的版本中删除“^”,但后来我得到了错误!无效版本:尝试构建时为1.0.0 。

知道如何摆脱此错误并成功构建通过 Amplify 部署的 ReactJS 应用程序吗?

4

1 回答 1

0

您还需要更新您amplify.yml的登录 CodeArtifact。这是一个例子......

frontend:
  phases:
    preBuild:
      commands:
        - pip3 install awscli --upgrade --user
        - aws codeartifact login --tool npm --repository repository_name --domain domain_name --domain-owner domain_owner_id
        - npm ci
于 2021-05-12T16:48:55.357 回答