Ошибка локального модуля Npm "jshint-стильный" не найден, когда он существует локально (через символическую ссылку)
В моей папке с файлом grunt есть символическая ссылка linux на папку node_modules, но когда я запускаю grunt, я получаю следующее:
Локальный модуль Npm "jshint-стильный" не найден. Это установлено?
Все мои другие модули npm работают нормально, есть идеи?
мой ворчливый файл:
module.exports = function (grunt) {
grunt.loadNpmTasks('grunt-shell');
grunt.loadNpmTasks('grunt-open');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-connect');
grunt.loadNpmTasks('grunt-karma');
grunt.loadNpmTasks('grunt-closure-compiler');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('jshint-stylish');
разрешения:
me@pc:~/dev/root/node_modules$ ls -l
total 96
..
drwxr-xr-x 3 me me 4096 Jun 10 14:57 grunt-shell
drwxr-xr-x 3 me me 4096 Jun 10 15:00 jshint-stylish
..
РЕДАКТИРОВАТЬ _____________________ Я использую это как грубый репортер:
jshint: {
options: {
jshintrc: '.jshintrc',
reporter: require('jshint-stylish')
},
all: [
2 ответа
Попробуйте установить модуль вручную.
npm install jshint-stylish
работал на меня.
Убедитесь, что ваша переменная среды NODE_PATH ссылается на каталог node_modules.
Локально это будет:
экспорт NODE_PATH=./node_modules
Крейндер-владелец load-grunt-configs предполагает здесь, что ошибка
"Локальный модуль Npm 'jshint-стильный' не найден. Он установлен?"
по-видимому, вызвано требованием jshint-Stylish в файле конфигурации jshint.js.
Он не может найти модуль jshint-Stylish, поскольку он находится в каталоге вне проекта.
Однако я не смог заставить его предложение работать на меня, но я нашел свой путь:
// gruntfile.js
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
config: grunt.file.readJSON('grunt-config.json'),
jshint_reporter: require('jshint-stylish')
});
// grunt-config.json
{
"jsHintFiles" : [
"**/modules/*.js"
]
}
// jshint.js
module.exports = function(grunt) {
"use strict";
grunt.config.merge({"jshint": {
"default": {
options: {
reporter: "<%= jshint_reporter %>"
},
src: ["<%= config.jsHintFiles %>"]
}
}});
};