2016-07-11 28 views
0

Wir verwenden gjslinter mit Grunt, um alle js-Dateien in unserem Projekt zu flinken.Warum schlägt das Ausführen von Google JavaScript Linter über Grunt fehl?

Die Konfiguration in Gruntfile.js sieht wie folgt aus:

gjslint: { 
    options: { 
     flags: ['--disable 220,110,200'], 
     reporter: { 
      name: 'gjslint_xml', 
      dest: '<%= pkg.docs %>/gjslint/gjslint.xml' 
     } 
    }, 
    all: { 
     src: ['<%= pkg.src %>/assets/js/modules/**', '<%= pkg.src %>/assets/js/lib/jquery/plugins/jquery-hse/**'] 
    } 
} 

Aber wenn ich die Fusseln es nicht starten:

$ grunt gjslint Running "gjslint:all" (gjslint) task 
Warning: Task "gjslint:all" failed. Use --force to continue. 

Aborted due to warnings. 

Warum? Pfade sollten korrekt sein. Es gibt keine weiteren Fehlermeldungen oder Berichte. Wie kann ich das debuggen?

Antwort

0

fand ich die Lösung mit den folgenden Schritten (auf 10 Windows-hier):

  1. installiert python2.7 https://www.python.org/downloads/
  2. Added Python Installationsverzeichnisse C:/Python27 sowie C:/Python27/Scripts-PATH und PYTHONPATH env Variablen
  3. Installierte Google JavaScript Linter durch Ausführen in der Befehlszeile:

    pip install https://github.com/google/closure-linter/zipball/master

  4. Geänderte Reporter Einstellung für Grunt:

(Gruntfile.js):

reporter: { 
    name: 'console' //report to console 
} 

Jetzt bin ich die richtige Fehlermeldungen in der Konsole bekommen, wenn grunt gjslint läuft. Es zeigte mir, dass es eine min.js-Datei gab, die einen ungültigen Code hatte. Also, ich entfernte es aus Gruntfile.js durch eine Ausnahme für min Hinzufügen von Dateien:

src: [ 
    '<%= pkg.src %>/assets/js/modules/**/*.js', 
    '<%= pkg.src %>/assets/js/lib/jquery/plugins/jquery-hse/**/*.js', 
    '!<%= pkg.src %>/assets/js/**/*.min.js' 
] 

Dies das Problem behoben!