簡體   English   中英

在Windows 8上運行咕unt聲

[英]Running grunt on windows 8

我試圖在Windows 8計算機上的現有項目上運行grunt。 我通過運行以下命令在全局安裝了grunt-cli:

npm install -g grunt-cli

但是,當嘗試使用以下命令運行項目時:

grunt develop 

我收到此錯誤:

Warning: Unable to write "preview.html" file <Error code: EPERM>. Use --force to continue.
Aborted due to warnings.

然后在跑步時

grunt develop --force

我收到此錯誤:

Running "less:css/main.css" <less> task
Fatal error: Unable to write "css/main.css" file <Error code: EPERM>.

您可以為此提供任何幫助,將非常有幫助,謝謝。

更新1:

這是我的Gruntfile.js

module.exports = function(grunt){

  grunt.initConfig({
    watch: {
      less: {
        files: ['**/*.less', '!less/_compiled-main.less'],
        tasks: 'less'
    },
    html: {
        files: ['preview-template.html', 'js/**/*.js', 'less/**/*.less', '!less/_compiled-main.less'],
        tasks: ['includeSource', 'add-dont-edit-prefix-to-preview-html']
    },
    wysiwyg: {
        files: ['less/wysiwyg.less'],
        tasks: 'generate-wysiwyg-styles-js'
    }
},
less: {
  'css/main.css': 'less/_compiled-main.less',
  'css/wysiwyg.css': 'less/wysiwyg.less',
  options: {
    dumpLineNumbers: 'comments'
}
},
includeSource: {
  options: {
    templates: {

    },
},
dev: {
    files: {
      'preview.html': 'preview-template.html',
      'less/_compiled-main.less': 'less/main.less'
  }
}
},
connect: {
  server: {
    options: {
      base: '.',
      port: 8000
  }
}
}
});

  // Css preprocessor
  grunt.loadNpmTasks('grunt-contrib-less');
  // Watch for file changes and run other grunt tasks on change
  grunt.loadNpmTasks('grunt-contrib-watch');
  // Includes all js files in preview-template.html and saves as preview.html.
  // Includes all less files in main.less and saves as _compiled-main.less
  grunt.loadNpmTasks('grunt-include-source');
  // Static http server
  grunt.loadNpmTasks('grunt-contrib-connect');

  grunt.registerTask('generate-wysiwyg-styles-js', function(){
    var css = grunt.file.read('css/wysiwyg.css');
    css = css.replace(/\n/g, '')
    var js = '// This file is generated automatically based on wysiwyg.less - don\' edit it directly!\n';
    js += '// It needs to exist in JS form so we can include the CSS in the downloaded saved notes file';
    js += "\napp.value('wysiwygStyles', '" + css + "');";
    grunt.file.write('js/app/wysiwyg-styles.js', js)
})

  grunt.registerTask('add-dont-edit-prefix-to-preview-html', function(){
    var file = grunt.file.read('preview.html');
    var prefix = '<!-- \n\n\n\n Don\'t edit this file, edit preview-template.html instead.' + new Array(20).join('\n') + ' -->';
    file = file.replace('<!doctype html>', '<!doctype html>' + prefix)
    grunt.file.write('preview.html', file);
});

  grunt.registerTask('build-develop', [
    'includeSource',
    'less',
    'generate-wysiwyg-styles-js',
    'add-dont-edit-prefix-to-preview-html'
    ])

  grunt.registerTask('develop', [
    'build-develop',
    'connect:server',
    'watch'
    ]);
}

嘗試類似的東西嗎?

less: {
  files: {
    'css/main.css': 'less/_compiled-main.less',
    'css/wysiwyg.css': 'less/wysiwyg.less'
  },
  options: {
    dumpLineNumbers: 'comments'
  }
}

注意在grunt.initConfig之后files添加到less數組

讓我知道它是否有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM