2016-05-26 80 views
7

Mein Projekt ist ein ziemlich einfaches yo/eckiges Projekt. Ich habe folgende cssmin config.cssmin gibt mir "Pfad muss eine Zeichenfolge sein. Empfangen undefined"

useminPrepare: { 
     html: '<%= yeoman.app %>/index.html', 
     options: { 
     dest: '<%= yeoman.dist %>', 
     flow: { 
      html: { 
      steps: { 
       js: ['concat', 'uglifyjs'], 
       css: ['cssmin'] 
      }, 
      post: {} 
      } 
     } 
     } 
    }, 
... 
    cssmin: { 
     dist: { 
     files: { 
      '<%= yeoman.dist %>/styles/main.css': [ 
      '.tmp/styles/{,*/}*.css' 
      ] 
     } 
     } 
    }, 
... 
    grunt.registerTask('build', [ 
    'clean:dist', 
    'wiredep', 
    'useminPrepare', 
    'concurrent:dist', 
    'autoprefixer', 
    'concat', 
    'ngAnnotate', 
    'copy:dist', 
    'cdnify', 
    'cssmin', 
    'uglify', 
    'filerev', 
    'usemin', 
    'htmlmin' 
    ]); 

wenn ich grunzt Build laufen bekomme ich folgende Fehlermeldung:

Running "cssmin:generated" (cssmin) task 
Warning: Path must be a string. Received undefined Use --force to continue. 

Aborted due to warnings. 


Execution Time (2016-05-26 00:57:04 UTC) 
concurrent:dist  15s 
autoprefixer:server 3.3s 
ngAnnotate:dist  3.6s 
cdnify:dist   10.7s 
cssmin:dist   888ms 
Total 34.6s 

ich diesen Fehler an anderen Stellen gesehen haben, aber nicht mit cssmin. Ich habe meine Bibliotheken in package.json auf den neuesten Stand gebracht, was die Ursache sein könnte.

Dieses Projekt war auf einmal in Ordnung. Ich kann nicht feststellen, welcher Pfad fehlt. Weiß jemand, welchen Weg ich verpasse?

+1

ich dies gefunden: https://github.com/yeoman/generator-angular/issues/1320, versuchen Sie es mit NVM, um zu Knoten 0.10.45 zu wechseln. – jonrsharpe

+0

Der Thread, mit dem @jonrsharpe verlinkt ist, enthält einen weiteren Link von peterkwidjaja mit einer Lösung, die ein Patch für cssmin ist und kein Downgrade des Knotens [github] erfordert (https://github.com/gruntjs/grunt-contrib-cssmin/pull/271/commits/11e655873dfa58b6edcda0113cee612f7a6b2ab9? diff = geteilt). – molbioguy

Antwort

5

EDIT: Antwort jetzt veraltet ist, siehe https://stackoverflow.com/a/39482214/1215723 unter

Mehr Informationen die ausführliche Option ausgeführt wird:

youri$ grunt -v 

Running "cssmin:generated" (cssmin) task 
Verifying property cssmin.generated exists in config...OK 
Files: [no src] -> dist/styles/vendor.css 
Files: .tmp/styles/main.css -> dist/styles/main.css 
Options: rebase=false, report="min", sourceMap=false 
Warning: Path must be a string. Received undefined Use --force to continue. 

wie we are not alone Looks. Indem Sie die Ausgabe Paniermehl, fand ich:

Die vorgeschlagene Lösung ist es Herabstufung auf Knoten v5, und in der Tat, es funktioniert (für mich). Sie können auch einen Versionsmanager für Knoten installieren, wenn Sie ihn für komfortabler halten.

+1

herunterladen tun Knoten V5? Bin ich allein frustriert über Grunzen? –

+0

Sie sind nicht allein. – schellsan

+1

veraltet, siehe Kommentar von Drmartin – Sonne

6

Eigentlich ist das Problem behoben, bitte aktualisieren Sie Ihre Version für die v1.0.2 link here

3

Sie müssen nur:

Änderung mit dieser in Ihrem package.json

"grunt-contrib-cssmin": "^1.0.2", 

dann

npm install