Asp.net mvc Grunt复制任务赢得';不要复制所有文件夹和文件
我对grunt有点陌生,我试图让它将src目录(App)的全部内容复制到dest目录(build) 它只是在应用程序文件夹上进行复制,但没有任何子文件夹和文件。我怎样才能让它复制所有东西?任何帮助都将不胜感激。请看下面我的gruntfile 谢谢-克里斯Asp.net mvc Grunt复制任务赢得';不要复制所有文件夹和文件,asp.net-mvc,gruntjs,grunt-contrib-copy,Asp.net Mvc,Gruntjs,Grunt Contrib Copy,我对grunt有点陌生,我试图让它将src目录(App)的全部内容复制到dest目录(build) 它只是在应用程序文件夹上进行复制,但没有任何子文件夹和文件。我怎样才能让它复制所有东西?任何帮助都将不胜感激。请看下面我的gruntfile 谢谢-克里斯 module.exports = function(grunt) { // INITIALIZE TASKS grunt.initConfig({ // PACKAGE INFO
module.exports = function(grunt) {
// INITIALIZE TASKS
grunt.initConfig({
// PACKAGE INFO
pkg: grunt.file.readJSON('package.json'),
// ENVIRONMENT SETTINGS
env: 'dev',
// CLEAN BUILD FOLDER
clean: {
options: {
force: true
},
build: [
'build/App/buildlates',
'build/App/styles/app',
'build/App/styles/vendor',
'build/App/scripts/app',
'build/App/scripts/vendor',
'build/App/scripts',
'build/App/styles',
'build/App/img',
'build/App',
'build'
]
},
// COPY DEV CODE INTO BUILD
copy: {
main: {
files: {
'build/': ['App/**']
}
}
},
// JSHINT
jshint: {
files: [
'App/scripts/app/angular/**/*.js'
],
options: {
ignores: [
'App/scripts/app/*.js',
'App/scripts/app/angular/directives/vendor/**'
]
}
},
// LESS PROCESSING
less: {
development: {
options: {
paths: ['build/App/styles/app']
},
files: {
'build/App/styles/app/css/main.css': 'build/App/styles/app/main.less',
'build/App/styles/app/css/another.css': 'build/App/styles/app/another.less'
}
}
},
// CONCAT
concat: {
css : {
src: ['build/App/styles/app/css/*.css'],
dest: 'build/App/styles/app/css/styles.css'
},
js : {
src: [
'build/App/scripts/app/angular/*.js',
'build/App/scripts/app/angular/objects/*.js',
'build/App/scripts/app/angular/modules/*.js',
'build/App/scripts/app/angular/services/*.js',
'build/App/scripts/app/angular/directives/*.js',
'build/App/scripts/app/angular/filters/*.js',
'build/App/scripts/app/angular/controllers/*.js'
],
dest: 'build/App/scripts/app/angular/release/app.js'
}
},
// MINIMIZE CSS
cssmin: {
minify: {
expand: true,
cwd: 'build/App/styles/app/css/',
src: ['styles.css', '!*.min.css'],
dest: 'build/App/styles/app/css/',
ext: '.min.css'
}
},
// MINIMIZE JAVASCRIPT
'jsmin-sourcemap': {
all: {
src: ['build/App/scripts/app/angular/release/app.js'],
dest: 'build/App/scripts/app/angular/release/app.min.js',
destMap: 'build/App/scripts/app/angular/release/app.js.map'
}
},
// WATCH FOR CHANGES
watch: {
src: {
options: { livereload: true },
files: ['App/scripts/app/**', 'App/styles/app/*.less', 'App/templates/**'],
tasks: ['jshint', 'less', 'preprocess'],
}
},
// PREPROCESS HTML BUILD DIRECTIVES
preprocess: {
options: {
context: {
ENVIRONMENT: '<%= env %>'
}
},
html: {
src: 'App/templates/environmentChecker.html',
dest: 'build/App/templates/environmentChecker.html'
}
}
});
// LOAD TASKS
grunt.loadNpmTasks('grunt-contrib-clean');
grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks('grunt-contrib-less');
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.loadNpmTasks('grunt-contrib-concat');
grunt.loadNpmTasks('grunt-jsmin-sourcemap');
grunt.loadNpmTasks('grunt-contrib-jasmine');
grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-preprocess');
// REGISTER TASKS
grunt.registerTask('default', ['clean:build', 'copy', 'jshint']);
grunt.registerTask('dev', ['jshint', 'clean:build', 'clean:build', 'copy', 'less:development', 'preprocess', 'watch']);
grunt.registerTask('prod', ['jshint', 'clean:build', 'clean:build', 'copy', 'less:development', 'concat:css', 'cssmin', 'concat:js', 'jsmin-sourcemap', 'preprocess']);
};
module.exports=函数(grunt){
//初始化任务
grunt.initConfig({
//包裹信息
pkg:grunt.file.readJSON('package.json'),
//环境设置
环境:"发展",,
//清理生成文件夹
清洁:{
选项:{
原力:对
},
建造:[
“build/App/buildlates”,
“构建/应用程序/样式/应用程序”,
“构建/应用程序/样式/供应商”,
“生成/应用程序/脚本/应用程序”,
“构建/应用程序/脚本/供应商”,
“生成/应用程序/脚本”,
“构建/应用/样式”,
“build/App/img”,
“构建/应用程序”,
“建造”
]
},
//将开发代码复制到内部版本中
副本:{
主要内容:{
档案:{
“build/”:['App/**']
}
}
},
//JSHINT
jshint:{
档案:[
“App/scripts/App/angular/***.js”
],
选项:{
忽略:[
“App/scripts/App/*.js”,
“App/scripts/App/angular/directives/vendor/**”
]
}
},
//少加工
减:{
发展:{
选项:{
路径:['build/App/style/App']
},
档案:{
'build/App/styles/App/css/main.css':'build/App/styles/App/main.less',
“build/App/styles/App/css/other.css”:“build/App/styles/App/other.less”
}
}
},
//海螺
康卡特:{
css:{
src:['build/App/styles/App/css/*.css'],
dest:'build/App/styles/App/css/styles.css'
},
js:{
src:[
'build/App/scripts/App/angular/*.js',
'build/App/scripts/App/angular/objects/*.js',
'build/App/scripts/App/angular/modules/*.js',
'build/App/scripts/App/angular/services/*.js',
'build/App/scripts/App/angular/directives/*.js',
'build/App/scripts/App/angular/filters/*.js',
'build/App/scripts/App/angular/controllers/*.js'
],
dest:'build/App/scripts/App/angular/release/App.js'
}
},
//最小化CSS
cssmin:{
缩小:{
是的,
cwd:“build/App/styles/App/css/”,
src:['styles.css','!*.min.css'],
dest:'build/App/styles/App/css/',
分机:'.min.css'
}
},
//最小化JAVASCRIPT
“jsmin源映射”:{
全部:{
src:['build/App/scripts/App/angular/release/App.js'],
dest:'build/App/scripts/App/angular/release/App.min.js',
destMap:'build/App/scripts/App/angular/release/App.js.map'
}
},
//留意变化
观察:{
src:{
选项:{livereload:true},
文件:['App/scripts/App/**','App/styles/App/*.less','App/templates/**',],
任务:['jshint','less','preprocess'],
}
},
//预处理HTML生成指令
预处理:{
选项:{
背景:{
环境:“”
}
},
html:{
src:'App/templates/environmentChecker.html',
dest:'build/App/templates/environmentChecker.html'
}
}
});
//加载任务
grunt.loadNpmTasks(“grunt-contrib-clean”);
grunt.loadNpmTasks('grunt-contrib-copy');
grunt.loadNpmTasks('grunt-contrib-jshint');
grunt.loadNpmTasks(“grunt-contrib-less”);
grunt.loadNpmTasks('grunt-contrib-cssmin');
grunt.loadNpmTasks(“grunt-contrib-concat”);
loadNpmTasks('grunt-jsmin-sourcemap');
grunt.loadNpmTasks(“grunt-contrib-jasmine”);
grunt.loadNpmTasks(“grunt-contrib-watch”);
loadNpmTasks('grunt-preprocess');
//注册任务
registerTask('default',['clean:build','copy','jshint']);
registerTask('dev',['jshint','clean:build','clean:build','copy','less:development','preprocess','watch']);
registerTask('prod',['jshint','clean:build','clean:build','copy','less:development','concat:css','cssmin','concat:js','jsmin sourcemap','preprocess']);
};
您指定的配置只查看根目录;如果您想要整个文件夹,为什么不指定它呢
copy: {
main: {
files: {
'build': 'App'
}
}
}
您好,谢谢您的回复!不幸的是,这没有任何复制:(如果你发现我的答案解决了你的问题,请考虑将它标记为接受。谢谢。