【问题标题】:Grunt: "Uglification failed"咕噜声:“丑化失败”
【发布时间】:2013-09-30 20:29:03
【问题描述】:

我正在尝试使用 gruntfileuglify 我的 JS 和 CSS。一个问题是uglify不起作用,终端给出了一个很模糊的错误...

Gruntfile.js

module.exports = function(grunt) {

  // Project configuration.
  grunt.initConfig({
    pkg: grunt.file.readJSON('package.json'),
    uglify:
    {
      js:
      {
        files: { 'compressed/javascript.min.js': ['js/*.js'] }
      },
      css:
      {
        files: { 'compressed/css.min.css': ['css/*.css'] }
      }
    }
  });

  // Load the plugin that provides the "uglify" task.
  grunt.loadNpmTasks('grunt-contrib-uglify');

  // Default task(s).
  grunt.registerTask('default', ['uglify']);

};

package.json

{
  "name": "my-project-name",
  "version": "0.1.0",
  "devDependencies": {
    "grunt": "~0.4.1",
    "grunt-contrib-jshint": "~0.6.3",
    "grunt-contrib-nodeunit": "~0.2.0",
    "grunt-contrib-uglify": "~0.2.2",
    "grunt-contrib-imagemin": "~0.3.0"
  }
}

终端输出:

MacBook-Pro-van-Valerie:grunt valerieeskens$ grunt
Running "uglify:js" (uglify) task
>> Uglifying source "js/javascript1.js,js/javascript2.js" failed.
Warning: Uglification failed. Use --force to continue.

Aborted due to warnings.
MacBook-Pro-van-Valerie:grunt valerieeskens$ 

地图结构:http://d.pr/i/CxVJ

【问题讨论】:

    标签: node.js gruntjs uglifyjs


    【解决方案1】:

    Uglify 用于 JavaScript,而不是 CSS。如果要压缩 CSS 文件,请使用 grunt-contrib-cssmin。这里的问题似乎是 JS 本身,我已经在我的 Uglify 配置中尝试了这种模式,它工作正常。您是否在 JavaScript 源文件上运行过 JSHint?可能是输入本身的问题。

    【讨论】:

      【解决方案2】:

      Uglify 仅适用于 JavaScript,因此您应该使用另一个 Grunt 插件来缩小您的 CSS。但是,即使那样,您的 javascript 也需要有效。否则缩小将失败。例如以下将不会通过:

      var name = "Steve;
      

      if(condition1 &&) {
         // ...
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-02-26
        • 2014-10-17
        • 1970-01-01
        • 1970-01-01
        • 2020-03-11
        • 1970-01-01
        相关资源
        最近更新 更多