简体   繁体   中英

package.json add “npm install -g” to scripts preinstall

When writing package.json :

"scripts": { "preinstall": "npm install -g grunt-cli" }, "devDependencies": { "async": "^0.9.0", "grunt": "^0.4.5", "grunt-contrib-connect": "^0.9.0", "grunt-contrib-cssmin": "^0.10.0", "grunt-contrib-jshint": "^0.10.0", "grunt-contrib-uglify": "^0.6.0", "grunt-contrib-watch": "^0.6.1", "jit-grunt": "^0.9.0", "marked": "^0.3.2", "time-grunt": "^1.0.0", "underscore": "^1.7.0" }

And then running the command npm install

It works on some computers but on some I get this error: http://pastebin.com/rYUwhV5k

Is it proper use of the package.json ? Is there any other way to do it? How can I fix the problem that occurs on the other computers?

According to the npm documentation "NOTE: INSTALL SCRIPTS ARE AN ANTIPATTERN" https://docs.npmjs.com/misc/scripts

In your case, probably best to just add in the readme.md that you need to have grunt installed to run the tests (and let the user decides how to install it)

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM