Ошибка локального модуля 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 %>"]
        }
    }});
};
Другие вопросы по тегам