保存時に Sass コードと JavaScript を監視およびコンパイルするための grunt ファイルを作成しました。これは JavaScript 部分ではうまく機能しますが、Sass のコンパイル時にどこかで失敗し、ディレクトリとファイル名が正しく指定されていても、使用するソース ファイルを見つけることができません。
私が受け取るエラーは次のとおりです。
Running 'sass:dist' <sass> task
Errno:ENOENT No such file or directory - Content/site.scss
これは私のGruntファイルです:
module.exports = function(grunt) {
var jsSource = [
'Scripts/jquery-1.10.2.js',
'Scripts/jquery.cookie.js',
'Scripts/respond.1.1.0.js',
'Scripts/jquery-ui-1.10.3.custom.js',
'Scripts/script-compensation.js',
'Scripts/webtrends.load.js'
];
var jsDebug = 'scripts/site.js';
var jsRelease = 'scripts/site.min.js';
var jsWatchFiles = ['Scripts/script-compensation.js'];
var cssWatchFiles = ['Content/*.scss'];
var scssSource = ['Content/site.scss'];
// Project configuration.
grunt.initConfig({
concat: {
application: {
src: jsSource,
dest: jsDebug
}
},
uglify: {
options: {
report: 'min'
},
application: {
src: ['<%= concat.application.dest %>'],
dest: jsRelease
}
},
sass: {
options: {
style: 'expanded'
},
dist: {
files: {
'Content/site.css': scssSource
}
}
},
watch: {
js: {
files: jsWatchFiles,
tasks: ['concat']
},
css: {
files: cssWatchFiles,
tasks: ['sass']
}
}
});
// These plugins provide necessary tasks.
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.registerTask("default", function(){
grunt.log.writeln("grunt workflow task list:");
grunt.log.writeln("\tgrunt watch - Watch js and scss");
grunt.log.writeln("\t\tWindows: use 'start /d . grunt watch' for background process");
grunt.log.writeln("\tgrunt debug - Build the debug files");
grunt.log.writeln("\tgrunt release - Build the release files");
});
grunt.registerTask('debug', ['concat']);
grunt.registerTask('release', ['concat', 'uglify']);
};
エラーはRuby自体から来ていると思いますが、確信が持てません。誰かがこれに遭遇しましたか? もしそうなら、私は何を修正することができますか? どんな助けでも大歓迎です。