我面对一些奇怪的行为,至少对我来说是奇怪的。当我在包中使用"nwFlavor": "normal"
构建NW.js项目时。Json一切正常,一切正常。一旦我改变到"nwFlavor": "sdk"
,我得到下面列出的错误。
我之前是怎么处理的:
我在以前的项目中有完全相同的错误,我设法通过删除所有node_modules来解决这个问题然后切换到最新的nw.js版本和npm install
。到目前为止,我不认为这是解决这个问题的正确方法,但它对我有效。
预测:
我不确定,但可能是因为新的nw.js版本已经发布了。现在我使用的是0.51.1,在撰写本文时,股票版本是0.51.2。也许它试图在我的项目使用0.51.1时下载0.51.2的sdk版本。不确定。
随着时间的推移,我无法在sdk和正常二进制文件之间切换,这种风味发生了什么?如果上面列出的问题与缓存的风味有关,那么如何在不删除node_modules的情况下重置缓存,以便风味二进制文件可以再次下载?
提前感谢您的时间。
编辑包后出错。从"nwFlavor": "normal"
切换到"nwFlavor": "sdk"
*** Vue stuff
DONE Build complete. The dist directory is ready to be deployed.
INFO Check out deployment instructions at https://cli.vuejs.org/guide/deployment.html
Starting building tasks... { tasks: [ [ 'win', 'x64' ] ], concurrent: false }
Building for win, x64 starts...
Fetching NW.js binary... { platform: 'win', arch: 'x64', version: '0.51.1', flavor: 'sdk' }
Building targets...
Building directory target starts...
Error: rcedit.exe failed with exit code 1. Fatal error: Unable to commit changes
at ChildProcess.<anonymous> (C:PROJECTMY_PROJECTnode_modulesrceditlibrcedit.js:60:16)
at ChildProcess.emit (events.js:315:20)
at maybeClose (internal/child_process.js:1021:16)
at Process.ChildProcess._handle.onexit (internal/child_process.js:286:5)
Building for win, x64 ends within 1.39s.
NW.js没有任何官方的构建工具。我假设您使用的是nw-vue-cli-example,它使用的是nwjs-builder-phoenix。
如果您对构建工具有问题,您可以:
- 在他们的repo中创建一个问题。
- 没关系,这个回购现在被标记为存档,所以没有问题可以做。
- 查看repo的分支,看看是否有任何替代方案已经改进,或者谁可以帮助你。
- 为你的项目编写自己的构建脚本(这在NW.js社区中很常见)
- 查看其他构建工具
- https://github.com/nwjs-community/nw-builder
- 帮助贡献我正在使用的构建工具
- https://github.com/nwutils/nw-utils-builder