运行 使用本地 deps 的 npm 脚本
Run npm scripts using local deps
目前我 运行 npm 脚本以这种方式使用本地部门:
package.json:
"scripts": {
"test": "node ./node_modules/karma/bin/karma start",
"node-test": "node ./node_modules/jasmine/bin/jasmine",
"build": "node ./node_modules/gulp/bin/gulp build"
},
我不想使用全局 deps,因为我可能会忘记将 deps 添加到 package.json。这样,当缺少本地 dep 时,我会收到一条错误消息,并且我没有问题,因为某些 dep 未在全局安装,例如业力插件。
有没有更好(更短)的方法来使用本地库定义 npm 脚本?这个 travis 兼容吗?
编辑:
如果不是很明显,我在全局安装了相同的库,但我想使用这些项目的本地安装。这意味着当我使用 karma start
启动 karma 时,全局安装的版本将启动 karma 服务器,这意味着如果我没有全局安装所有 karma 插件,那么我会出错。
我遇到的另一个问题 windows,因此此处描述的解决方案:How to use package installed locally in node_modules? 不起作用。 Windows 不识别 #!/bin/sh
和 #!/usr/bin/env node
头部分,据我所知没有 sh 命令。至少不在 webstorm 终端。 Git bash 有 sh 命令,但我想 运行 来自 webstorm 终端的这些 npm 脚本。
一种可能的解决方案是以某种方式修复 webstorm,以便它可以从终端使用 sh。之后我可以使用 $(npm bin)
我想。但这只是一个猜测。不知道能不能做到。
npm 在使用 npm run
(包括两个 "magic" 快捷方式执行命令 运行 之前自动将路径 ./node_modules/.bin
添加到您的 PATH
env npm start
和 npm test
)
您可以通过以下方式进行设置:
"scripts": {
"test": "karma start",
"node-test": "jasmine",
"build": "gulp build"
}
假设您在 devDependencies
或 dependencies
中列出了 karma、jasmine 和 gulp-cli(以便在执行 npm install
时安装它们)
是的,它与 travis 兼容。这是一个使用 tap
在 travis 上测试的包示例,它作为模块安装在本地:
目前我 运行 npm 脚本以这种方式使用本地部门:
package.json:
"scripts": {
"test": "node ./node_modules/karma/bin/karma start",
"node-test": "node ./node_modules/jasmine/bin/jasmine",
"build": "node ./node_modules/gulp/bin/gulp build"
},
我不想使用全局 deps,因为我可能会忘记将 deps 添加到 package.json。这样,当缺少本地 dep 时,我会收到一条错误消息,并且我没有问题,因为某些 dep 未在全局安装,例如业力插件。
有没有更好(更短)的方法来使用本地库定义 npm 脚本?这个 travis 兼容吗?
编辑:
如果不是很明显,我在全局安装了相同的库,但我想使用这些项目的本地安装。这意味着当我使用 karma start
启动 karma 时,全局安装的版本将启动 karma 服务器,这意味着如果我没有全局安装所有 karma 插件,那么我会出错。
我遇到的另一个问题 windows,因此此处描述的解决方案:How to use package installed locally in node_modules? 不起作用。 Windows 不识别 #!/bin/sh
和 #!/usr/bin/env node
头部分,据我所知没有 sh 命令。至少不在 webstorm 终端。 Git bash 有 sh 命令,但我想 运行 来自 webstorm 终端的这些 npm 脚本。
一种可能的解决方案是以某种方式修复 webstorm,以便它可以从终端使用 sh。之后我可以使用 $(npm bin)
我想。但这只是一个猜测。不知道能不能做到。
npm 在使用 npm run
(包括两个 "magic" 快捷方式执行命令 运行 之前自动将路径 ./node_modules/.bin
添加到您的 PATH
env npm start
和 npm test
)
您可以通过以下方式进行设置:
"scripts": {
"test": "karma start",
"node-test": "jasmine",
"build": "gulp build"
}
假设您在 devDependencies
或 dependencies
中列出了 karma、jasmine 和 gulp-cli(以便在执行 npm install
时安装它们)
是的,它与 travis 兼容。这是一个使用 tap
在 travis 上测试的包示例,它作为模块安装在本地: