错误您的锁文件需要更新,但是yarn是用`--frozen-lockfile`运行的

问题描述

我对yarn.lock文件中的一个依赖项有疑问。问题出在ldapjs上,最新版本存在有关用户或密码中特殊字符的错误,因此我想将其冻结在最新的工作版本1.0.2中。

当我将代码提交到master分支时,构建该项目的步骤开始失败,提示标题信息。

这是我的dockerfile

FROM repository/node-oracle:10.15.3

LABEL maintainer="Me"

RUN yarn cache clean

# Add tini
ENV tini_VERSION v0.18.0
ADD https://github.com/krallin/tini/releases/download/${tini_VERSION}/tini /tini
RUN chmod +x /tini
ENTRYPOINT ["/tini","--"]

workdir /usr/src/auth

copY . .

RUN yarn install --frozen-lockfile --non-interactive --silent

ENV PATH /usr/src/auth/node_modules/.bin:$PATH

EXPOSE 3000

CMD ["node","./bin/www"]

关于如何使这项工作可行的任何解决方法

作为一个额外的信息,我能够在功能分支的这一步中运行管道,消息是在开发和主分支中开始的。

[更新]

这些是更新的相关性,并冻结在我的yarn.lock文件

activedirectory@^0.7.2:
  version "0.7.2"
  resolved "https://registry.yarnpkg.com/activedirectory/-/activedirectory-0.7.2.tgz#19286d10c6b24a98cc906dc638256191686fa91f"
  integrity sha1-GShtEMaySpjMkG3GOCVhkWhvqR8=
  dependencies:
    async ">= 0.1.22"
    bunyan ">= 1.3.5"
    **ldapjs "=1.0.2"**
    underscore ">= 1.4.3"

***ldapjs@1.0.2***:
  version "1.0.2"
  resolved "https://registry.yarnpkg.com/ldapjs/-/ldapjs-1.0.2.tgz#346e040a95a936e90c47edd6ede5df257dd21ee6"
  integrity sha512-XzF2BEGeM/nenYDAJvkDMYovZ07figalrYD+suprSqUWPcwpoa+a4vWl5g8o/En85m6NHWBpirDFNClWLAd77w==
  dependencies:
    asn1 "0.2.1"
    assert-plus "0.1.5"
    bunyan "0.22.1"
    nopt "2.1.1"
    pooling "0.4.6"
  optionalDependencies:
    dtrace-provider "0.2.8"

解决方法

只是更新。经过几次尝试,我终于能够做我想做的事。从ldap.js和活动目录(包含ldap.js库)中删除^可以按预期完成工作。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...