gpt4 book ai didi

node.js - 构建脚本在 Windows 上失败,但在 Linux 或 OSX 上不会

转载 作者:可可西里 更新时间:2023-11-01 10:43:57 26 4
gpt4 key购买 nike

我的 package.json 中有以下脚本:

"scripts": {
"pretest": "mkdir -p build && node -e 'process.stdout.write(\"export var version = \\\"\" + require(\"./package.json\").version + \"\\\";\\n\");' > build/version.js && rollup -f umd -n d3_random -o build/d3-random.js -- index.js"
}

在 Windows 上完全失败并显示以下错误消息:

> d3-random@0.2.1 pretest C:\Users\Pepe\Dropbox\workspace\d3-random
> mkdir -p build && node -e 'process.stdout.write("export var version = \"" + require("./package.json").version + "\";\n");' > build/version.js && rollup -f umd -n d3_random -o build/d3-random.js -- index.js

[eval]:1
'process.stdout.write(export var version = "
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

SyntaxError: Unexpected token ILLEGAL
at Object.exports.runInThisContext (vm.js:53:16)
at Object.<anonymous> ([eval]-wrapper:6:22)
at Module._compile (module.js:425:26)
at node.js:587:27
at doNTCallback0 (node.js:428:9)
at process._tickCallback (node.js:357:13)
npm ERR! Test failed. See above for more details.

有人知道为什么这只在 Windows 而不是基于 Unix 的系统上失败吗?

附加信息:

  • 操作系统:Windows 8.1 和 10(使用 git-bash、win-bash 和 cygwin 测试)
  • NodeJS 版本:5.0.0
  • npm 版本:3.3.6

最佳答案

-e '...' 中的代码移动到一个文件中,因为内联由于嵌入引号而存在问题。如果代码在文件中,您就可以从这些问题中解脱出来,并且脚本将更加可移植且更易于阅读。

关于node.js - 构建脚本在 Windows 上失败,但在 Linux 或 OSX 上不会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35807161/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com