我正在使用gruntfile为2个独立的模块运行uglify任务。这两个模块都配置在相同的gruntfile中:
uglify:
{
ac: {
dist: {
options: {
mangle: false, // Separate target for mangled output
report: 'min', // Reports actual minified size
banner: '<%= banner %>'
},
files: {
'dist/<%= pkg.name %>_ac.min.js': ['<%= concat.ac.dest %>']
}
},
mangled: {
options: {
mangle: true,
report: 'gzip',
banner: '<%= banner %>'
},
files: {
'dist/<%= pkg.name %>_ac.2.min.js': ['<%= concat.ac.dest %>']
}
}
},
lib: {
files: {
'dist/<%= pkg.name %>_lib.min.js': ['<%= concat.lib.dest %>']
},
mangled: {
files: {
'dist/<%= pkg.name %>_lib.2.min.js': ['<%= concat.lib.dest %>']
}
}
},
}
grunt.registerTask('ac', ['uglify:ac:dist']);
当我运行上面的grunt文件时,它运行没有任何错误,但我没有得到任何输出。我不确定我的配置方式是否正确。
答案 0 :(得分:0)
好的,这是我对问题中有限信息的回答;
您设置Gruntfile.js
文件的方式是在concat
任务中查找您似乎没有包含的文件。如果它找不到这些文件,它就不会输出任何内容。
我的猜测是你从sample gruntfile复制了部分内容。
具体而言,此部分['<%= concat.ac.dest %>']
在文档中进行了解释:
这告诉uglify在
dist/
内创建一个包含的文件 缩小JavaScript文件的结果。在这里,我使用<%= concat.dist.dest %>
,因此uglify将缩小concat的文件 任务产生。
如果您没有指定或调用concat
任务,则没有输出文件可以运行uglify
,因此不会输出。检查concat
是否使用grunt.registerTask('ac', ['concat', 'uglify:ac:dist']);
进行调用并生成输出(如果您已设置了tast)或将其更改为您希望uglify的JS文件的位置。
'dist/<%= pkg.name %>_ac.min.js': ['/path/to/yourJavascriptFile.js']
答案 1 :(得分:0)
删除dist任务,只有
ac: {
options: {
mangle: false, // Separate target for mangled output
report: 'min', // Reports actual minified size
banner: '<%= banner %>'
},
files: {
'dist/<%= pkg.name %>_ac.min.js': ['<%= concat.ac.dest %>']
}
},
希望concat.ac.dest拥有正确的文件名和路径。如果您需要添加更多文件,可以添加为
['src/input1.js', 'src/input2.js']
更多详情请参阅https://github.com/gruntjs/grunt-contrib-uglify
希望这可以解决您的问题。