【问题标题】:Cross platform package json跨平台包json
【发布时间】:2018-08-17 04:04:30
【问题描述】:

我想创建一个需要在mac和windows下工作的跨平台包json。

我有一个脚本对象

"scripts": {
    "dev": "npm run cleanup && webpack --watch",
    "build": "npm run cleanup && NODE_ENV=\"production\" webpack",
    "lint": "eslint ./main/content/jcr_root/etc/designs/digital/clientlibs/src/js --fix -f table --ext .js --ext .jsx || true",
    "cleanup": "rm -rf ./main/content/jcr_root/etc/designs/digital/clientlibs/dist"
  },

我已经尝试了所有方法,但无法将其设置为跨平台。请帮我解决这个问题。

【问题讨论】:

  • 你不能在 Windows 上使用rm,除非它被假定配置了 MinGW。对于cleanup,请查看rimraf

标签: node.js webpack node-modules package.json


【解决方案1】:

最好的办法是依靠节点模块来完成这项工作。

对于rm -rf,有一个名为rimraf 的节点包。

通过安装包

$ npm i -D rimraf

并调整您的脚本以使用它:

"scripts": {
  "clean": "rimraf ./main/..."
}

由于节点包大多是跨操作系统的,这应该可以工作。

您可能还想查看cross-env 来设置您的 NODE_ENV。

如果需要任何其他帮助,请告诉我。 :-)

编辑:

由于您使用的是 webpack,因此还有用于清理任务和 linting 的插件。如需更多信息,请查看:

【讨论】:

  • @VahRun 如果您能将答案标记为已接受,那就太好了:-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-25
  • 2016-05-11
  • 2011-06-30
  • 2017-12-24
  • 1970-01-01
相关资源
最近更新 更多