Gruntjs 无法删除当前工作目录Grunt之外的文件
我正在使用grunt构建我的angular项目。所以它工作得很好,但在某个时候我不能再运行“咕噜服务”或“咕噜构建”。每次我收到以下错误消息时 无法删除当前工作目录之外的文件 奇怪的是,我是唯一一个犯这个错误的人。我的所有同事都可以毫无错误地构建或服务。当然,我找到了一个解决方案(使用'--force'),但我认为这不是解决方案,因为我是唯一一个得到这个错误的人。任何人都可以向我解释这个错误,也许给我一个更好的解决方案,武力选项Gruntjs 无法删除当前工作目录Grunt之外的文件,gruntjs,Gruntjs,我正在使用grunt构建我的angular项目。所以它工作得很好,但在某个时候我不能再运行“咕噜服务”或“咕噜构建”。每次我收到以下错误消息时 无法删除当前工作目录之外的文件 奇怪的是,我是唯一一个犯这个错误的人。我的所有同事都可以毫无错误地构建或服务。当然,我找到了一个解决方案(使用'--force'),但我认为这不是解决方案,因为我是唯一一个得到这个错误的人。任何人都可以向我解释这个错误,也许给我一个更好的解决方案,武力选项 // Empties folders to start fresh
// Empties folders to start fresh
clean: {
dist: {
files: [{
dot: true,
src: [
'.tmp',
'<%= yeoman.dist %>/{,*/}*',
'!<%= yeoman.dist %>/.git{,*/}*'
]
}]
},
server: '.tmp'
},
//清空文件夹以重新开始
清洁:{
地区:{
档案:[{
多特:没错,
src:[
“.tmp”,
'/{,*/}*',
“!/.git{,*/}*”
]
}]
},
服务器:'.tmp'
},
显然,您必须使用任务的force
选项(而不是grunt的--force选项)来允许grunt contrib clean删除cwd之外的文件
现在,在测试之前,我建议您在测试环境中尝试它,因为与许多grunt任务不同,grunt contrib clean是破坏性的,您已经收到警告
clean: {
dist: {
files: [{
dot: true,
-> force: true,
src: [
'.tmp',
'<%= yeoman.dist %>/{,*/}*',
'!<%= yeoman.dist %>/.git{,*/}*'
]
}]
},
server: '.tmp'
},
clean:{
地区:{
档案:[{
多特:没错,
->原力:没错,
src:[
“.tmp”,
'/{,*/}*',
“!/.git{,*/}*”
]
}]
},
服务器:'.tmp'
},
“应该”可以修复您遇到的错误。我对Gruntfile.js进行了如下编辑:
// Empties folders to start fresh
clean: {
options: {
force: true
},
dist: {
files: [{
dot: true,
src: [
'.tmp',
'<%= yeoman.dist %>/{,*/}*',
'!<%= yeoman.dist %>/.git{,*/}*'
]
}]
},
server: '.tmp'
},
//清空文件夹以重新开始
清洁:{
选项:{
原力:对
},
地区:{
档案:[{
多特:没错,
src:[
“.tmp”,
'/{,*/}*',
“!/.git{,*/}*”
]
}]
},
服务器:'.tmp'
},
对于好奇的人来说,这可能是由
节点5.7是一个新问题,我打赌@threxx正在使用节点5.7,而她的同事还在使用5.6或更早版本
在合并问题的PR之前,
force
标志是一个很好的解决方法。使用--force不应处理删除,它只会继续执行其他任务。你能证实这一点吗?另外,你使用什么grunt插件进行删除,你能提供你的gruntfile代码吗?是的,我将编辑我的帖子,以显示grunt clean任务,但是这是基本的yeoman代码,没有任何更改。你在哪个操作系统上?你能用-verbose
选项运行任务并在这里转储控制台日志吗。thxOSX是最新的。在一分钟内粘贴哑巴对我来说不起作用,所以我在“clean”开始后添加了“options:{force:true}”。