Articles of gruntjs

GruntJS + contrib-coffee:编译但保持文件夹结构

我用grunt-contrib-coffee使用GruntJS 。 这很好用! 随着Watch插件的帮助,它甚至更好。 但是我怀疑: 我有两个文件夹,其中一个用我的coffeescript文件,另一个用我的(编译的)js文件。 看起来像这样 root_folder |— public |— libs |— ppalmeida <= here are my .js compiled files from src_client coffeescripts |— controllers |— core |— Main.js |— models |— src_client <= here are my .coffee files |— controllers |— core |— Main.coffee |— models 当我使用coffee –output –compile命令构build时,文件夹结构保持不变:Coffeescript cli编译“core”文件夹并在Main.js中。 但是当我运行GruntJS时,它将所有文件放在同一个文件夹(ppalmeida)中。 所以控制器,核心,模型文件被扔在同一个文件夹,女巫我不想要的。 这是我的glob_to_multipleconfiguration: […]

grunt-contrib-copy死于EPERM操作不允许“C:\ Documents and Settings”

我正在尝试使用grunt-contrib-copy来运行一个简单的grunt任务,但它在到达复制任务时立即死亡,并带有以下消息: 运行“复制:主”(复制)任务 警告:EPERM,不允许操作'C:\ Documents and Settings'使用 – 强制继续 由于警告而中止 我在跑步: Windows 7 64位(所以C:\Documents and Settings不存在) 节点0.10.28(安装在C:\nodejs ) npm 1.4.9 grunt-cli 0.1.13 咕噜0.4.5 grunt-contrib-copy 0.5.0 我已经在C:\nodejs和我的项目文件夹( C:\Users\myusername\Documents\Programming\myprojectname ,在那里没有空格或圆括号)上对“Documents and Settings”进行了全文search,但没有任何匹配。 我的copy任务定义是: copy: { main: { files: [ {expand: true, cwd: 'src/core', src: '/**', dest: 'src/chrome/'}, {expand: true, cwd: 'src/core', src: '/**', dest: 'src/firefox/'} ] } }, […]

我怎样才能重新安装grunt在yeoman项目?

我的Grunt安装发生了一些事情,我不知道它是什么。 我正在使用Yeoman脚手架我的应用程序,但今天我开始得到许多Grunt错误。 例如,当我运行Grunt Test时,我现在得到以下内容: Loading "autoprefixer.js" tasks…ERROR >> Error: Cannot find module 'base64-js' Loading "connect.js" tasks…ERROR >> Error: Cannot find module 'cookie-signature' Loading "imagemin.js" tasks…ERROR >> Error: Cannot find module './lib/js-yaml.js' Loading "jshint.js" tasks…ERROR >> Error: Cannot find module 'jshint' Loading "uglify.js" tasks…ERROR >> Error: Cannot find module './source-map/source-map-generator' Loading "cdnify.js" tasks…ERROR >> SyntaxError: /Users/Documents/Git/client/node_modules/grunt-google-cdn/node_modules/google-cdn/node_modules/cdnjs-cdn-data/external/cdnjs.json: […]

Grunt不会加载节点服务器

我的gruntfile.js是: 'use strict'; module.exports = function(grunt) { // Project Configuration grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), watch: { jade: { files: ['app/views/**'], options: { livereload: true, }, }, js: { files: ['gruntfile.js', 'server.js', 'app/**/*.js', 'public/js/**', 'test/**/*.js'], tasks: ['jshint'], options: { livereload: true, }, }, html: { files: ['public/views/**'], options: { livereload: true, }, }, css: { files: ['public/css/**'], […]

由于imagemin问题,Grunt构build失败,出了什么问题?

我正在尝试使用grunt build构build一个应用程序,我得到这个错误: # grunt build Running "clean:dist" (clean) task Running "wiredep:app" (wiredep) task Running "wiredep:sass" (wiredep) task Running "includeSource:dist" (includeSource) task File "dist/index.html" created. Running "useminPrepare:html" (useminPrepare) task Configuration changed for concat, uglify, cssmin Running "concurrent:dist" (concurrent) task >> Warning: There are more tasks than your concurrency limit. After this limit >> is reached no […]

使用Grunt和grunt-contrib-cssmin删除注释

我试图使用Grunt和grunt-contrib-cssmin删除所有的CSS注释,CSS文件被编译和缩小它有所有评论。 注释应该删除行:keepSpecialComments:0 module.exports = function(grunt) { require('jit-grunt')(grunt); grunt.initConfig({ less: { development: { options: { compress: true, yuicompress: true, optimization: 2 }, files: { "css/main.css": "less/bootstrap.less" // destination file and source file } } }, watch: { styles: { files: ['less/**/*.less'], // which files to watch tasks: ['less'], options: { nospawn: true } }, }, cssmin: […]

RequireJS 2.1.9使用Grunt时会导致“最大调用堆栈..”错误

我正在使用Grunt构build一个多模块应用程序(Backbone,Marionette,RequireJS,Handlebars),但我一直得到“Error:RangeError:Maximum call stack size exceeded”消息。 如果我用2.1.5replacer.js 2.1.9文件,它可以工作。 我不知道哪里可以开始debugging。 注意:从节点运行相同的构buildconfiguration选项可以使用2.1.9 node r.js -o build.js 它只是不喜欢从Grunt跑。 r.js 2.1.9 grunt-cli v0.1.11 grunt v0.4.2 这是我的Gruntfile.js module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), requirejs: { compile: { options: { appDir: "src/main/webapp", baseUrl: 'js/', dir: "target", mainConfigFile: 'src/main/webapp/js/require-config.js', //optimizeAllPluginResources : true, findNestedDependencies: true, //removeCombined : true, //optimize : 'none', //inlineText : […]

在Windows上Jenkins + Grunt =常数EBUSY和ENOENT错误

试图在jenkinsbuild立一个分支。 构build总是失败,通常在获得一个文件处理后,但有时在文件列表中的随机点min / concat。 错误如下所示: "ENOENT, no such file or directory 'C:\Program Files (x86)\Jenkins\jobs\grunt-minify-concat Build\workspace\1419346881831" 要么 "EBUSY, resource busy or locked 'C:\Program Files (x86)\Jenkins\jobs\grunt-minify-concat Build\workspace\1419370631016'" grunt-minify-concat是我们为Grunt添加了几行的项目的一个分支,为CSS / JS连接和缩小添加了一个任务。 非常标准的东西。 这里是configuration的相关位: Gruntfile.js cssmin: { dist: { expand: true, cwd: 'MySite.Web/css/', src: ['*.css', '!*.min.css'], dest: 'MySite.Web/css/', ext: '.min.css' } }, min: { dist : { expand: true, […]

咕噜asynchronous任务超时

我有一个asynchronous的任务,但在5秒钟超时,咕噜走到下一个任务: grunt.registerTask("something", '', function(target){ var done = this.async(); function checkStatus () { console.log('test'); if(someCondition) done(); } setInterval(checkStatus, 500); }); 我在terminal上看到9个“testing”消息,然后它就转到下一个任务,而没有进一步等待“完成”。 我在grunt的代码中没有发现任何限制或时间限制。 为什么会发生? grunt 0.4.8rc1

将节点命令作为咕噜驱动的QUnittesting的一部分运行

我正在使用grunt来打包我的jQuery插件。 作为QUnittesting的一部分,我需要在testing开始之前运行一个节点命令,以获得一致的结果(类似于process.env.TZ = 'Europe/London'因为我的插件处理时区,所以结果会有所不同不同的时区)。 所以我的问题是:如何运行一个特定于节点的命令作为qunittesting的一部分? 谢谢。