【问题标题】:Grunt: No such file or directoryGrunt:没有这样的文件或目录
【发布时间】:2016-03-16 03:50:12
【问题描述】:

我刚刚开始了一个新项目,我正在设置一个 gruntfile,但它显示错误。我只添加了 sass,它显示错误。

据我说,它看起来应该可以工作。 Grunt 退出并出现错误:

Errno::ENOENT: 没有这样的文件或目录 - 未定义

文件路径是否会导致该错误? Grunt 在 assets/stylesheets/styles.css 创建 css 文件,但它是空的。

这是我的代码:

module.exports = function(grunt) {
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
    sass: {
            dist: {
        options: {
          style: 'compressed',
          compass: true
        },
        files: {
          'assets/stylesheets/style.css': 'src/sass/style.scss'
        }
      }
        },
        watch: {
            sass: {
        files: 'src/sass/{,*/}*.{scss,sass}',
        tasks: ['sass']
            }
        }
    });
    grunt.loadNpmTasks('grunt-contrib-sass');
    grunt.loadNpmTasks('grunt-contrib-watch');
    grunt.registerTask('default', ['watch'] );
}

grunt -v 输出:

Running "sass" task

Running "sass:dist" (sass) task
Verifying property sass.dist exists in config...OK
Files: [no src] -> assets/stylesheets/style.css
Options: style="compressed", compass
Command: sass  assets/stylesheets/style.css --style=compressed --compass
Errno::ENOENT: No such file or directory - undefined

【问题讨论】:

  • 在这种情况下,使用详细选项 (-v) 运行任务通常很有帮助。详细的输出是什么?
  • @steveax 谢谢,我已将输出添加到我的原始帖子中
  • 所以,它没有找到 files 键中指定的 sass 文件,你的项目的文件结构是什么样的? (tree 有等级选项是你的朋友)

标签: sass gruntjs


【解决方案1】:

我正在查看详细输出最后一行的错误。

Errno::ENOENT: No such file or directory - undefined

每当我看到 GruntJS 出现此错误时,都是由于文件路径问题。在这种情况下,输出路径assets/stylesheets 可能存在问题。

除此之外,这样的问题可能是由于您的工作目录上的安全权限标志。首先尝试手动创建所需的目录结构。然后尝试运行任务。如果错误消失,问题的可能原因是 Grunt (Node) 没有足够的权限来写入您的项目的文件系统。

希望有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-06-24
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-17
    • 2016-05-06
    相关资源
    最近更新 更多