我遇到了一些奇怪的情况,其中“ember s”报告“缺少 yarn 包”,然后是缺少包的列表(其中两个),然后是“运行‘ 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 是安装不需要的附加组件之前的最后一次提交。我不认为这样做有什么问题,但现在我想知道。
运行 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 ”会导致以下内容出现在输出文本中...
警告 foobar@0.0.0:“dependencies”具有范围“~3.8.1”的依赖项“ember-cli”,该依赖项与版本“3.8”同名的“devDependencies”中的依赖项冲突
编辑 :好的,我能够在 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 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
关于npm - "Already up-to-date"和 "Run ' yarn ' to install missing dependencies"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56141960/