Grunt Uglify - 忽略特定文件/文件夹

时间:2014-01-16 15:34:37

标签: gruntjs grunt-contrib-uglify

运行uglify时,我需要忽略某些文件和文件夹,但仍然会递归扫描整个文件夹结构。

我有一个concat任务,它将我的所有插件连接在一起,并使它们成为一个单独的文件。我需要确保uglify忽略这些文件并且不对它们进行操作,因为我不希望它们在目标目录中,因为concat已经为我处理过。

我尝试将文件和文件夹添加到我的src数组中,并使用前面的!,但它仍可以对它们进行操作。

以下是我尝试使用的内容,但它不起作用:

uglify: {
    options: {
        banner: '/*! <%= grunt.template.today("mm-dd-yyyy h:MM:ss TT") %> */\n'
    },
    files: {
        src: [
                 '!ie'
                ,'!polyfills'
                ,'!vendor'
                ,'!iecompat.js'
                ,'**/*.js'
             ],
        dest: 'app/scripts',
        cwd: 'sources/scripts',
        ext: ".js",
        flatten: false,
        expand: true
    }
},

2 个答案:

答案 0 :(得分:7)

Ilan Frumer的建议可能很好。

现在,关于您的具体问题,您的模式肯定需要调整如下:

示例:

 '!**/ie/*'

将忽略子目录中任何位置名为“ie”的文件夹中的任何文件(这可能是您想要的,这是正确的吗?)

同样适用于:

 '!**/iecompat.js'

将忽略文件夹/子文件夹中任何位置名为iecompat.js的文件。

您应该启动here以更好地理解grunt中的文件选择机制。

答案 1 :(得分:1)

上述答案对我不起作用,因为这是(据我所知)寻找子子文件夹,而不是子文件夹。

这对我有用:

'!ie/**'