npm 运行 脚本调用 Rollup 除了打开配置文件什么都不做
npm run script invoking Rollup does nothing but open config file
我们有一个脚本 "build": "rollup -c rollup.js --environment production"
,当我们的一些团队(使用 Windows)调用它时,有时会自发地不正常地 运行,而是只是打开rollup.js
编辑器中的配置文件。不幸的是,我真的不知道从哪里开始,因为我从来没有能够复制它。没有生成日志文件,据我所知 ignore-scripts
未设置,这是我在 SO 上看到的与此行为相关的唯一其他内容。
这是一个已知的问题吗?有一个简单的修复吗?或者,如果没有,我应该去哪里找到有关此的更多信息?这会是 npm 或 rollup 的问题吗?
我在Windows遇到了同样的情况。
我用WSL绕过了
通过一些调查,我已经追踪到我认为这是关于他们如何处理配置文件的汇总错误。我觉得好像我应该就此向他们开票,但我一直代表团队成员行事并且没有能力自己复制它,所以......我想我会尝试强迫他们这样做。
但是无论如何,从我查看 rollup 的源代码可以看出,如果 rollup 配置文件有一个普通的 .js
扩展名,那么在配置中看起来 rollup 本身就是 运行将其转换为 CommonJS 格式,然后将其导入并在实际构建步骤中使用。在 Windows 这个过程中的某个地方出了点问题,结果是配置文件最终被打开,无论 JS 文件的默认处理程序是什么。所以基本上解决方案是更改文件扩展名。
我们的原始配置是使用 ES6 import/export 设置的,目前我不清楚将扩展名更改为 .mjs
是否会跳过或以其他方式更改此转换步骤,似乎有当人们尝试过但我不能保证时,它就这样工作了。我所做的是通过配置并手动将所有 ES6 import/export 转换为 CommonJS require()
,然后将文件扩展名更改为 .cjs
(因此我们的配置从 rollup.js
到 rollup.cjs
) 现在它似乎在所有方面都在一致地工作。
我们有一个脚本 "build": "rollup -c rollup.js --environment production"
,当我们的一些团队(使用 Windows)调用它时,有时会自发地不正常地 运行,而是只是打开rollup.js
编辑器中的配置文件。不幸的是,我真的不知道从哪里开始,因为我从来没有能够复制它。没有生成日志文件,据我所知 ignore-scripts
未设置,这是我在 SO 上看到的与此行为相关的唯一其他内容。
这是一个已知的问题吗?有一个简单的修复吗?或者,如果没有,我应该去哪里找到有关此的更多信息?这会是 npm 或 rollup 的问题吗?
我在Windows遇到了同样的情况。
我用WSL绕过了
通过一些调查,我已经追踪到我认为这是关于他们如何处理配置文件的汇总错误。我觉得好像我应该就此向他们开票,但我一直代表团队成员行事并且没有能力自己复制它,所以......我想我会尝试强迫他们这样做。
但是无论如何,从我查看 rollup 的源代码可以看出,如果 rollup 配置文件有一个普通的 .js
扩展名,那么在配置中看起来 rollup 本身就是 运行将其转换为 CommonJS 格式,然后将其导入并在实际构建步骤中使用。在 Windows 这个过程中的某个地方出了点问题,结果是配置文件最终被打开,无论 JS 文件的默认处理程序是什么。所以基本上解决方案是更改文件扩展名。
我们的原始配置是使用 ES6 import/export 设置的,目前我不清楚将扩展名更改为 .mjs
是否会跳过或以其他方式更改此转换步骤,似乎有当人们尝试过但我不能保证时,它就这样工作了。我所做的是通过配置并手动将所有 ES6 import/export 转换为 CommonJS require()
,然后将文件扩展名更改为 .cjs
(因此我们的配置从 rollup.js
到 rollup.cjs
) 现在它似乎在所有方面都在一致地工作。