Grunt.js, Attention: Impossible d'écrire le fichier "src" (Code d'erreur: EISDIR)
J'ai un Gruntfile
écrit dans CoffeeScript
et je reçois un (Error code: EISDIR)
lorsque le cssmin
tâche est exécutée. Après l'exécution de la tâche en mode verbose, - je obtenir cette information:
Running "cssmin" task
Running "cssmin:src" (cssmin) task
Verifying property cssmin.src exists in config...OK
Files: assets/z.styles.concat.css.liquid -> src
Options: report=false
Reading assets/z.styles.concat.css.liquid...OK
Writing src...ERROR
Warning: Unable to write "src" file (Error code: EISDIR). Use --force to continue.
Voici mon cssmin tâche:
cssmin:
src: 'assets/z.styles.concat.css.liquid'
dest: 'assets/styles.min.css.liquid'
La z.styles.concat.css.liquid
est créé après concat
s'exécute et est réussi à sortir le dossier des actifs. Le chemin indiqué dans l'attribut src est correct.
Aucune idée de ce que pourrait être jeter l'erreur?
Aussi, ici, c'est l'ensemble de la gruntfile de connivence.
Grognement.café:
module.exports = (grunt) ->
# Project configuration.
grunt.initConfig
pkg: grunt.file.readJSON 'package.json'
files:
grunt: ['gruntfile.js']
css: ['assets/screen.css', 'assets/styles.css.liquid']
scss: ['src/scss/**/*.scss']
js: ['src/js/**/*.js'] #(if we need liquid templating), 'src/js/**/*.js.liquid', 'assets/**/*.js.liquid']
coffee: ['src/js/coffee/**/*.coffee', 'src/js/coffee/**/*.coffee.liquid']
img: ['src/images/**/*.{png,jpeg,svg,jpg,gif}']
# Image Processing
smushit:
path:
src: '<%= files.img %>' #recursively replace minified images
dest: 'assets'
# Concatenation Processing
concat:
css:
src: ['<%= files.css %>']
dest: 'assets/z.styles.concat.css.liquid'
js:
src: ['<%= files.js %>']
dest: 'src/js/z.scripts.concat.js'
# JavaScript Processing
coffee:
app:
expand: true
cwd: 'src/js/coffee'
src: ['**/*.coffee', '**/*.coffee.liquid']
dest: 'src/js'
ext: '.js'
uglify:
dist:
src: ['src/js/z.scripts.concat.js']
dest: 'assets/scripts.min.js'
jshint:
files: ['<%= files.grunt %>', 'src/js/z.scripts.concat.js']
options:
jquery: true
smarttabs: true
curly: true
eqeqeq: true
immed: true
latedef: true
newcap: true
noarg: true
sub: true
undef: true
boss: true
eqnull: true
browser: true
globals:
jQuery: true
console: true
undef: true
unused: false
# CSS Processing
compass:
dist:
options:
sassDir: 'src/scss'
cssDir: 'assets'
imagesDir: 'assets',
javascriptsDir: 'assets',
outputStyle: 'expanded'
cssmin:
src: 'assets/z.styles.concat.css.liquid'
dest: 'assets/styles.min.css.liquid'
# watch tasks
watch:
options:
nospawn: true
events: ['changed', 'added']
files: [
'<%= files.js %>'
'<%= files.coffee %>'
'<%= files.scss %>'
]
tasks: ['default']
# These plugins provide necessary tasks.
grunt.loadNpmTasks 'grunt-contrib-coffee'
grunt.loadNpmTasks 'grunt-contrib-watch'
grunt.loadNpmTasks 'grunt-contrib-concat'
grunt.loadNpmTasks 'grunt-contrib-jshint'
grunt.loadNpmTasks 'grunt-contrib-uglify'
grunt.loadNpmTasks 'grunt-contrib-cssmin'
grunt.loadNpmTasks 'grunt-smushit'
grunt.loadNpmTasks 'grunt-contrib-compass'
# Default task.
grunt.registerTask 'default', [
'coffee'
'concat:js'
'jshint'
'uglify'
'concat:css',
'cssmin'
]
# Minify task
# Run the default task then losslessly minify images with Yahoo!'s Smush-It
grunt.registerTask 'minify', ['default', 'smushit']
source d'informationauteur agconti | 2014-01-07
Vous devez vous connecter pour publier un commentaire.
Dans votre sortie Grunt est d'essayer d'exécuter la
cssmin:src
tâche, puis il essaie de l'écriture pour le fichier source. Cela ne peut être le résultat souhaité?Vous devez spécifier un nom pour le cssmin tâche parce que c'est un multitâche. Voir la Grunt documentation pour plus d'informations.
Changer votre grunt config pour
À l'aide de NodeJS 4.2.2 et Grunt 0.4.5,
J'avais EISDIR erreur d'écriture lors de la compilation de nom de fichier a été nommé même comme un répertoire existant. Ils étaient tous les deux dans le même niveau de la hiérarchie. Renommer résolu le problème.
Il semble, src points de répertoire. Essayez d'ajouter /** à la fin du chemin.
actifs/z.styles.concat.css.liquide/**