【问题标题】:npm run script returns "No such file or directory" when trying to bundle files尝试捆绑文件时,npm run 脚本返回“没有这样的文件或目录”
【发布时间】:2020-09-28 07:06:01
【问题描述】:

我正在尝试让我们所有的 Angular Web 组件在我们的 Bamboo 构建服务器中使用相同的构建步骤。所有项目都必须这样构建:

  1. npm 安装
  2. npm 运行构建
  3. npm 运行包

npm run build 完美运行。它只是执行这个命令:

ng build --prod --output-hashing=none --single-bundle

这将创建一个名为 dist 的目录,其中包含以下文件:

  • main-es5.js
  • main-es2015.js
  • polyfills-es5.js
  • polyfills-es2015.js
  • scripts.js

我需要将*-es5.js 和*-es2015.js 文件捆绑到它们自己的单个文件中,而不是两个文件中。这就是为什么我调用npm run bundle,也就是这个命令:

cat dist/{polyfills-es5,main-es5}.js > dist/element-es5.js && cat dist/{polyfills-es2015,main-es2015}.js > dist/element-es2015.js

但是,它似乎找不到文件,因为我得到了一个

cat: dist/{polyfills-es5,main-es5}.js: 没有那个文件或目录

我不确定为什么会发生这种情况,但是当我调用 npm run bundle 时,我在正确的目录中。 dist/ 和 package.json 在同一个目录中。

如果我直接复制cat: dist/{polyfills-es5,main-es5}.js 行并将其粘贴到终端,文件的所有内容都会输出到终端。 npm run bundle 似乎没有从同一路径执行。

我的问题可能是什么?

【问题讨论】:

    标签: angular npm


    【解决方案1】:

    啊哈,仔细研究一下,cat {file1,file2}.js 似乎工作不正常。它实际上是在尝试查找名为 {file1,file2}.js 的文件,而不是计算实际有多少文件。

    通过以下方式解决:

    cat dist/polyfills-es5.js dist/main-es5.js > dist/element-es5.js && cat dist/polyfills-es2015.js dist/main-es2015.js > dist/element-es2015.js
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-04
      • 2021-08-23
      • 2013-07-03
      • 2018-05-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多