"Already up-to-date" 和 "Run 'yarn' to install missing dependencies"?

"Already up-to-date" and "Run 'yarn' to install missing dependencies"?

我遇到了一些奇怪的情况,其中“ember s”报告“缺少纱线包”接下来是缺少的软件包列表(其中两个),然后是“运行 'yarn' 以安装缺少的依赖项”。

然而,当我 运行 'yarn' 时,我收到消息“success Already up-to-date”。

知道如何摆脱这个圈子吗?


在此开始之前我做了一些事情,我想这是我的问题的根源

删除插件

我安装了一个 Ember 插件,但它产生了问题,所以我决定摆脱它。为此,我执行了以下操作:

git push -f origin 913c2dee12b0363df0664c9c63e0443abe0adb57:foo-bar
git reset --hard 913c2dee12b0363df0664c9c63e0443abe0adb57
yarn
yarn install
yarn clean
yarn install
yarn

其中 913c2dee12b0363df0664c9c63e0443abe0adb57 是安装不需要的附加组件之前的最后一次提交。我不认为这样做有什么不对,但现在我想知道。


运行ning Ember 服务器的输出

当我 运行 'ember s' 我得到这个输出...

DEPRECATION: ember-cli-babel 5.x has been deprecated. Please upgrade to at least ember-cli-babel 6.6. Version 5.2.8 located: foobar -> ember-cli-build-date -> ember-cli-babel

Missing yarn packages:
Package: @bower_components/jquery
  * Specified: jquery/jquery-dist#
  * Installed: (not installed)

Package: @bower_components/jstree
  * Specified: vakata/jstree#^3.3.5
  * Installed: (not installed)

Run `yarn` to install missing dependencies.



Stack Trace and Error Report: /tmp/error.dump.33c6e8c0abc9fc8abd355dc080268f9c.log
An error occurred in the constructor for ember-cli-dependency-checker at /media/mint/dev/foobar/node_modules/ember-cli-dependency-checker

关于 ember-cli 版本的警告

我认为这无关紧要,只是为了完整起见

运行 宁 'yarn' 结果在输出文本中出现以下内容 ...

warning foobar@0.0.0: "dependencies" 具有范围为“~3.8.1”的依赖项 "ember-cli" 与 "devDependencies" 中的依赖项冲突与版本“3.8”同名


编辑:好的,我能够在 dwenzel 的评论的帮助下解决这个问题...

rm -rf node_modules && yarn

虽然这实际上导致了一个不同的问题,我 几乎 肯定是无关的,但我只是在这里提到它,以防它对后来者有用。

yarn 的执行最初因以下错误而失败...

35238 verbose stack Error: node-sass@4.5.3 postinstall: `node scripts/build.js`
35238 verbose stack Exit status 1
35238 verbose stack     at EventEmitter.<anonymous> (/home/rshea/.nvm/versions/node/v10.15.3/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:301:16)
35238 verbose stack     at EventEmitter.emit (events.js:189:13)
35238 verbose stack     at ChildProcess.<anonymous> (/home/rshea/.nvm/versions/node/v10.15.3/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
35238 verbose stack     at ChildProcess.emit (events.js:189:13)
35238 verbose stack     at maybeClose (internal/child_process.js:970:16)
35238 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:259:5)
35239 verbose pkgid node-sass@4.5.3
35240 verbose cwd /media/mintextra/dev/ddn-build-test-temp/foobar
35241 verbose Linux 3.13.0-169-generic
35242 verbose argv "/home/rshea/.nvm/versions/node/v10.15.3/bin/node" "/home/rshea/.nvm/versions/node/v10.15.3/bin/npm" "install"
35243 verbose node v10.15.3
35244 verbose npm  v6.4.1
35245 error code ELIFECYCLE
35246 error errno 1
35247 error node-sass@4.5.3 postinstall: `node scripts/build.js`
35247 error Exit status 1
35248 error Failed at the node-sass@4.5.3 postinstall script.
35248 error This is probably not a problem with npm. There is likely additional logging output above.
35249 verbose exit [ 1, true ]

我能够通过...解决这个问题

npm install node-sass@latest
npm install

...此时 ember s 能够 运行 没有错误。

当 yarn 像这样混淆时,您通常可以通过在安装前清除节点模块来解决问题:

rm -rf node_modules && yarn

我在不删除整个 node_modules 目录的情况下设法解决这个问题的方法只是从 topLevelPatterns 中删除 node_modules/.yarn-integrity.

中的模块

免责声明:我不知道这意味着什么,但 yarn 的完整性已经受到质疑,而且它如此有效!?

您似乎想执行 yarn install --check-files 以验证文件未从 node_modules 中删除。这避免了必须清除您的 node_modules 文件,这可能非常耗时。

https://classic.yarnpkg.com/en/docs/cli/install/#toc-yarn-install-check-files https://github.com/yarnpkg/yarn/issues/2240

您也可以尝试 reinstall/download 所有包:

yarn install --force