Grunt:致命错误:观看EPERM

Mic*_*wis 10 node.js gruntjs livereload grunt-contrib-watch

您可以在此处查看/克隆完整代码:https://github.com/mlewisTW/grunt-tests

我想观看src目录(来缩小,CONCAT,少等),这使一切都入build目录.我也想观看build目录,以livereload.这是手表配置代码段:

watch: {
        options: {
            livereload: false
        },
        build: {
            files: ['<%= srcDir %>/**/*'],
            tasks: 'build'
        },
        reload: {
            files: ['<%= buildDir %>/**/*'],
            options: {
                livereload: true
            }
        }
    },
Run Code Online (Sandbox Code Playgroud)

我在Windows 8上.Fatal error: watch EPERM当我更改文件时,我得到了一个,它开始了build任务的第一步(干净).我猜这与我正在尝试删除一个监视目录的事实有关.

有没有办法在我构建时关闭livereload watch任务,然后在完成后重新启动它?

还有其他/更好的方法吗?

Din*_*wat 1

来自Github 问题:

Windows 上的 EPERM 意味着您可以删除或写入文件。

这通常是因为另一个进程正在持有该文件的句柄。

有时,在 Windows 上使用 NodeJS 时,这种情况会有点随机发生。我发现如果你运行第二次就可以了。