2014-12-23 13 views
5

Pisząc package.json:package.json dodać "npm zainstalować -g" do skryptów preinstalacji

"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" }

a następnie uruchomić komendę npm install

To działa na niektórych komputerach, ale na niektóre otrzymuję ten błąd: http://pastebin.com/rYUwhV5k

Czy to właściwe korzystanie z package.json? Czy jest jakiś inny sposób na zrobienie tego? Jak naprawić problem występujący na innych komputerach?

+0

Nie należy wykonywać globalnej instalacji w ramach preinstalacji. Ludzie nie zdadzą sobie sprawy, że tam są, nie rozumieją, dlaczego nowy globalny pakiet jest zainstalowany. –

Odpowiedz

2

Zgodnie z dokumentacją npm „Uwaga: skrypty instalacyjne stanowią antywzorzec projektowy” https://docs.npmjs.com/misc/scripts

w przypadku, prawdopodobnie najlepiej jest po prostu dodać w readme.md że trzeba mieć grunt zainstalowany do uruchamiania testów (i niech użytkownik zdecyduje, jak go zainstalować)

+2

Wygląda na to, że usunęli to ostrzeżenie. – weisjohn

+2

Kolejny błąd npm. Niedługo "dopóki ktoś nie wyda alternatywy. – LeeGee

Powiązane problemy