Gruntjs 如何加载两个同名的grunt任务?

Gruntjs 如何加载两个同名的grunt任务?,gruntjs,yeoman,Gruntjs,Yeoman,我在用约曼做一个项目 基本上,它工作正常,但在构建过程中,我想将图像文件夹移动到其他地方 因此,我加载了grunt contrib copy任务,该任务允许我这样做。但不幸的是,这与yeoman内置的复制任务相冲突 有没有办法在我的Gruntfile.js中为grunt contrib copy取别名,这样我就可以同时使用它们 grunt.loadNpmTasks('grunt-contrib-copy'); //Here I need to use "copy" again but not

我在用约曼做一个项目

基本上,它工作正常,但在构建过程中,我想将图像文件夹移动到其他地方

因此,我加载了
grunt contrib copy
任务,该任务允许我这样做。但不幸的是,这与yeoman内置的复制任务相冲突

有没有办法在我的
Gruntfile.js
中为
grunt contrib copy
取别名,这样我就可以同时使用它们

grunt.loadNpmTasks('grunt-contrib-copy');

//Here I need to use "copy" again but not referencing the yeoman task but the grunt-contrib-copy task.
grunt.registerTask('build','intro clean coffee compass mkdirs concat css min replace copy time');
可能会在这里帮助你。试试这个:

//临时重命名yeoman的复制任务
grunt.renameTask('copy','yeomanCopy');
//从grunt contrib副本加载“副本”
grunt.loadNpmTasks('grunt-contrib-copy');
//将其重命名为“复制”以外的其他名称
grunt.renameTask('copy','myCopy');
//将yeoman的任务重新命名为其原始名称,这样就不会有任何中断
grunt.renameTask('yeomanCopy','copy');
//现在请使用“myCopy”实现您的目的
// ...

谢谢,这很有效!虽然我有一个问题,即一些任务检查某个任务是否已经执行过,并且不知道它们的重命名:-/但是您正在立即重新命名现有的yeoman的任务,不是吗?哦,我停止重命名原始任务,当然您是对的。谢谢你,德米特里!