【问题标题】:Ember.js 2.7 does not build using yarn - does build using npmEmber.js 2.7 不使用 yarn 构建 - 使用 npm 构建
【发布时间】:2016-10-24 07:18:38
【问题描述】:

版本:

  • ember.js 2.7,ember-data 2.7
  • ember-cli 2.9.1 // 也适用于 ember-cli 2.7
  • node 6.9.1, npm 3.10.9 // 对 node 4.4.4 和 npm 2.15.5 也是如此
  • 麦克埃尔卡皮坦

重现步骤:

  • rm -Rf node_modules bower_components
  • yarn
  • bower install
  • ember sember build

症状:


Build failed.
The Broccoli Plugin: 

[Funnel: Funnel
  vendor/ember-cli-qunit/images
  /assets
 include:2] failed with:

Error: ENOENT: no such file or directory, scandir '/Users/somePath/client/tmp/funnel-input_base_path-nIg5n9K9.tmp/0/vendor/ember-cli-qunit/images/'
    at Error (native)
    at Object.fs.readdirSync (fs.js:951:18)
    at FSMonitor._measure (/Users/somePath/client/node_modules/heimdalljs-fs-monitor/index.js:66:21)
    at Object.readdirSync (/Users/somePath/client/node_modules/heimdalljs-fs-monitor/index.js:82:30)
    at _walkSync (/Users/somePath/client/node_modules/broccoli-funnel/node_modules/walk-sync/index.js:64:18)
    at Function.entries (/Users/somePath/client/node_modules/broccoli-funnel/node_modules/walk-sync/index.js:40:10)
    at Funnel.processFilters (/Users/somePath/client/node_modules/broccoli-funnel/index.js:264:26)
    at Funnel.build (/Users/somePath/client/node_modules/broccoli-funnel/index.js:202:10)
    at /Users/somePath/client/node_modules/broccoli-plugin/read_compat.js:61:34
    at tryCatch (/Users/somePath/client/node_modules/rsvp/dist/rsvp.js:538:12)

The broccoli plugin was instantiated at:
    at Funnel.Plugin (/Users/somePath/client/node_modules/broccoli-plugin/index.js:7:31)
    at new Funnel (/Users/somePath/client/node_modules/broccoli-funnel/index.js:56:10)
    at /Users/somePath/client/node_modules/ember-cli/lib/broccoli/ember-app.js:1474:12
    at Array.map (native)
    at EmberApp.otherAssets (/Users/somePath/client/node_modules/ember-cli/lib/broccoli/ember-app.js:1468:61)
    at EmberApp.toArray (/Users/somePath/client/node_modules/ember-cli/lib/broccoli/ember-app.js:1642:10)
    at EmberApp.toTree (/Users/somePath/client/node_modules/ember-cli/lib/broccoli/ember-app.js:1662:30)
    at module.exports (/Users/somePath/client/ember-cli-build.js:67:16)
    at CoreObject.setupBroccoliBuilder (/Users/somePath/client/node_modules/ember-cli/lib/models/builder.js:70:19)
    at CoreObject.init (/Users/somePath/client/node_modules/ember-cli/lib/models/builder.js:50:10)

如果我在纱线之后执行npm install,控制台输出是:


npm WARN prefer global jshint@2.9.4 should be installed with -g
npm WARN prefer global marked@0.3.6 should be installed with -g
npm WARN prefer global node-gyp@3.3.1 should be installed with -g

> node-sass@3.10.1 install /Users/somePath/client/node_modules/node-sass
> node scripts/install.js


> node-sass@3.10.1 postinstall /Users/somePath/client/node_modules/node-sass
> node scripts/build.js

"/Users/somePath/client/node_modules/node-sass/vendor/darwin-x64-46/binding.node" exists.
 testing binary.
Binary is fine; exiting.
npm WARN prefer global npm@3.10.9 should be installed with -g

> spawn-sync@1.0.15 postinstall /Users/somePathclient/node_modules/spawn-sync
> node postinstall

auth0-ember-simple-auth@1.1.0 node_modules/auth0-ember-simple-auth

如果我rm -Rf node_modules 并执行标准的npm install,则构建将像以前一样正常工作。

有什么想法吗?

更新:npm installyarn 构建的 node_modules 文件夹的差异:


仅在 yarn_node_modules/: .yarn-integrity

仅在 yarn_node_modules/:ansi 中

仅在 yarn_node_modules/: ansistyles 中

仅在 yarn_node_modules/:archy 中

仅在 yarn_node_modules/: async-some 中

仅在 yarn_node_modules/: 内置

仅在 yarn_node_modules/: char-spinner

仅在 yarn_node_modules/:chmodr

仅在 yarn_node_modules/:chownr

仅在 yarn_node_modules/: cmd-shim

仅在 yarn_node_modules/: columnify 中

仅在 yarn_node_modules/: config-chain

仅在 yarn_node_modules/: 调试日志中

仅在 yarn_node_modules/:默认值

仅在 yarn_node_modules/: dezalgo

仅在 yarn_node_modules/: dom-storage

仅在 yarn_node_modules/: 编辑器中

仅在 yarn_node_modules/: esprima

仅在 yarn_node_modules/:fs-vacuum

仅在 yarn_node_modules/: fs-write-stream-atomic

仅在 yarn_node_modules/: fstream-ignore

仅在 yarn_node_modules/: fstream-npm

仅在 yarn_node_modules/: github-url-from-git

仅在 yarn_node_modules/: github-url-from-username-repo

仅在 yarn_node_modules/: ic-ajax

仅在 yarn_node_modules/: iferr

仅在 yarn_node_modules/:init-package-json

仅在yarn_node_modules/:jju中

仅在 yarn_node_modules/: json-parse-helpfulerror

仅在 yarn_node_modules/:lockfile 中

仅在 yarn_node_modules/:lodash.pad

仅在 yarn_node_modules/: lodash.padend

仅在 yarn_node_modules/:lodash.padstart

仅在 yarn_node_modules/: normalize-git-url

仅在 yarn_node_modules/:npm-cache-filename 中

仅在 yarn_node_modules/:npm-install-checks

仅在 yarn_node_modules/:npm-registry-client

仅在 yarn_node_modules/:npm-user-validate

仅在 yarn_node_modules/: opener 中

仅在 yarn_node_modules/: path-is-inside 中

仅在 yarn_node_modules/:promzard

仅在 yarn_node_modules/: proto-list 中

仅在 yarn_node_modules/: 读取

仅在 yarn_node_modules/:已读取安装

仅在 yarn_node_modules/: read-package-json

仅在 yarn_node_modules/: readdir-scoped-modules

仅在yarn_node_modules/: implementation-package-specifier

仅在 yarn_node_modules/:重试

仅在 yarn_node_modules/:sha

仅在 yarn_node_modules/:sigmund 中

仅在 yarn_node_modules/: sorted-object

仅在 yarn_node_modules/: text-table 中

仅在 yarn_node_modules/:uid-number 中

仅在yarn_node_modules/:umask中

仅在 yarn_node_modules/: validate-npm-package-name

仅在 yarn_node_modules/:wcwidth


【问题讨论】:

  • 我比较了 npm install 和 yarn 构建的 npm_modules 文件夹和简单的diff -q。查看更新后的帖子。

标签: node.js ember.js yarnpkg


【解决方案1】:

默认情况下,Yarn 在清理阶段会删除很多包。 Ember-cli-qunit 需要 images 目录才能运行,但默认已删除。

更新您的 .yarnclean 文件并替换以下行:

图片

!图片

这将保留所有图像目录,如果您需要更多特异性,可以优化正则表达式。

【讨论】:

  • 我不明白为什么其他人没有这个问题。应该有很多 yarn 和 ember-cli 用户遇到这个问题。
  • 只有当你明确运行yarn clean时,.yarnclean 文件才会被创建
  • @shawnn42 我认为这需要'yarn autoclean --init'。
  • @Bracke 在撰写该评论时,yarn clean 也会添加该文件(没有明确要求)我不确定是否仍然如此。
  • @shawnn42 当我尝试时它没有创建它,使用自动清理它确实创建了文件。我什至在yarnpkg.com/en/docs/cli 上找不到“清理”命令,看起来他们已经删除了它??
【解决方案2】:

我遇到了同样的事情。我发现另一个解决方法是将 ember-cli-qunit 降级回 v1.4.0 也允许使用 yarn 构建模块。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-03-25
    • 2021-08-21
    • 2016-01-29
    • 1970-01-01
    • 1970-01-01
    • 2020-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多