Tag: gruntjs

如何在运行摩卡testing之前等待一个咕噜的任务完成

简而言之… 我有一些我想要testing的外部configuration的咕噜任务(确保他们做他们应该做的)。 所以我想写一个摩卡testing在before函数中运行任务,并声明一切顺利。 …和一些细节 在我的gruntfile有类似的东西 # Load task configs from `grunt` dir. configs = require('load-grunt-configs') grunt, config: src: ['tasks/*{.js,.json,.coffee,.cson}'] # Load all **grunt tasks** with patter `grunt-*` require('load-grunt-tasks') grunt, pattern: [ 'grunt-*' ] # Pass configs to grunt grunt.initConfig configs 并随后进行一些任务注册… 然而,我现在可以访问我的less任务驻留在我的tasks文件夹(使用grunt-contrib-less ) less.cson 。 到现在为止还挺好。 🙂 我使用chai来断言: describe('Checking static resources for dev', function () […]

npm拒绝安装grunt依赖项

我有几个使用grunt的项目,今天npm拒绝安装依赖项。 重要的一点就是这个以前工作正常,只是突然停下来。 包文件符合grunt文档( http://gruntjs.com/getting-started#package.json ) { "name": "devproject", "author": "me", "version": "1.0.0", "devDependencies": { "grunt": "~0.4.1", "grunt-contrib-jshint": "~0.6.2", "grunt-contrib-uglify": "~0.2.2", "grunt-contrib-watch": "~0.5.1", "grunt-sass": "~0.10.0" } } 如果我运行npm install ,而不是安装devDependencies,npm现在给出了这3个警告: npm WARN package.json devproject@1.0.0 No description npm WARN package.json devproject@1.0.0 No repository field. npm WARN package.json devproject@1.0.0 No README data 没有任何反应,依赖关系没有安装。 如果我也可以添加说明和自述文件,但是有一个存储库设置是没有意义的,这是另一个存储库中文件夹中的私有构build脚本。 如果我添加"private" : true,到package.json文件,然后警告消失,但没有发生,仍然没有安装。 如果我运行npm […]

Grunt Watch永远使用Grunt Forever

根据grunt-forever文件,grunt-forever必须指向一个应用程序文件。 我只想执行grunt-watch任务,这样我就可以永远地观看一个文件,并且如果这个文件改变了,就可以执行任务。 这是否可能与咕噜声永远? 如果是这样,configuration文件将是什么样子?

咕噜+手表+茉莉花一次,失败第二

这是我的Grumodule.exports =函数(grunt){ grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), watch: { serve: { files: ['server.js', 'src/**/*.coffee'], tasks: ['coffee', 'develop', 'jasmine'], options: { nospawn: true } }, test: { files: ['tests/*.spec.js', 'src/**/*.coffee'], tasks: ['coffee', 'jasmine_node'], options: { nospawn: true } } }, jasmine_node: { options: { forceExit: true, match: '.', matchall: false, extensions: 'js', specNameMatcher: 'spec', jUnit: { useDotNotation: true, […]

如何从grunt-contrib-watch杀死的进程释放资源?

我试图使用模块grunt-contrib-watch来重新启动我的node.js服务器,每当某些文件更改。 我已经使用grunt运行服务器,jshint和模板编译器,我知道这些函数的工作。 以下是启动服务器的任务: grunt.registerTask('runServer', 'Starts the server.', function(){ grunt.log.writeln('Starting server…'); var done = this.async(); var child = grunt.util.spawn({ cmd: process.argv[0], args: ['server.js'], }, function(){ grunt.log.writeln('Server stopped!'); done(true); }); child.stdout.pipe(process.stdout); child.stderr.pipe(process.stderr); }); 这是watch任务的configuration: watch: { all: { files: ['some/files/*.js'], tasks: ['default'], options: { spawn: true, interrupt: true, reload: true, } } } 当任务重新启动时,服务器由于“EADDRINUSE”exception而失败,我认为这是因为之前的subprocess没有释放它正在使用的端口,这很奇怪 – 我看到“服务器停止! “ […]

Grunt Compass致命错误:产卵EPERM

我最近一直在努力与最近这个工作,原来我有问题与ruby等,然后我卸载ruby,并以rvm方式做ruby,现在我不再有这些问题.. 现在,我希望我有我的最后一个问题,这似乎是一个咕噜/咕噜,贡献指南针的问题。 当我尝试运行涉及指南针任务的任何命令时,出现以下错误: Running "compass:dev" (compass) task Verifying property compass.dev exists in config…OK File: [no files] Options: config="C:\\code\\newsletters\\globalgeorgia\\test\\grunt-email-boilerplate\\vendor\\compass-config.rb", cssDir="tmp/css", imagesDir="tmp/images" Fatal error: spawn EPERM 而且我已经尝试了解决类似问题的解决scheme,没有运气…任何帮助将是伟大的! UPDATE 我认为它必须与指南针,因为这给了完全相同的问题,因为这 (不使用指南针)完美的作品。

如何使用grunt-usemin来使用外部文件?

如何使用grunt-usemin下载外部文件并进行连接? <!– build:js release/all.min.js –> <script type="text/javascript" src="scripts/jquery.js"></script> <script type="text/javascript" src="scripts/jquery.carouFredSel.js"></script> <script type="text/javascript" src="http://cdn.domain.com.br/scripts/jquery.cycle.js"></script> <script type="text/javascript" src="http://cdn.domain.com.br/scripts/jquery.slideshow.js"></script> <!– endbuild –> 并useminprepare显示: concat: { generated: { files: [ { dest: '.tmp/concat/release/all.min.js', src: [ 'web/scripts/jquery.js', 'web/scripts/jquery.carouFredSel.js', 'web/http:/cdn.domain.com.br/scripts/jquery.cycle.js', 'web/http:/cdn.domain.com.br/scripts/jquery.slideshow.js'] } ] } } 最后两个文件不会添加到我的all.min.js,因为是外部文件。 如何包含?

获得汇编 – 中间件 – 永久链接的工作

我正在尝试获取构build中的assemble-middleware-permalinks ,但是它并不像我想要的那样工作。 我有我的Gruntfile.coffee的以下Gruntfile.coffee : assemble: options: layout: 'default.hbs' layoutdir: '<%= config.app %>/_layouts' partials: '<%= config.app %>/_partials/*.hbs' plugins: ['assemble-middleware-permalinks'] permalinks: preset: 'pretty' pages: files: '.tmp/': ['<%= config.app %>/pages/{,*/}*.hbs'] 但是,当运行grunt assemble任务时,它仍然显示它只生成以下内容: Running "assemble:pages" (assemble) task writing .tmp/about.html writing .tmp/index.html assembled 2 files OK 我安装了使用0.5.0分支的grunt-assemble软件包。 我也尝试手动把结构,而不是使用预置: permalinks: structure: ':basename/index.html' 谁能告诉我我做错了什么?

Grunt任务查杀完成后的服务器

我正在构build一个应用程序,其中Grunt编译一个文件,作为下载返回给用户。 如果我已经有一个静态文件,我可以这样做: app.post('/', function(req, res){ var pkgFile = __dirname + '/myfile.js'; var filestream = fs.createReadStream(pkgFile); filestream.pipe(res); }); 问题是,如果文件是由Grunt编译的,从app.post()内部app.post() ,当Grunt任务完成后,退出我的快递服务器。 我得到了一个“完成,没有错误”的结论,并且结束这个过程。 我使用Grunt.cli运行我的Grunt任务,并将callback传递给我的包装器,因为我的Grunt任务返回数据,没有写入文件。 grunt.cli({ gruntfile: __dirname + "/../gruntfile.js", modules: modules, strip: !compat, releaseVersion: version, project: project, noCoreDependencies: !addCoreDependencies, callback: stream }); function stream (data) { var filename = ['MooTools-', project, '-', version, (compat ? '-compat' : '') […]

在运行grunt watch的时候,它会在运行express服务器任务时抛出警告并中止

在运行grunt watch的时候,它会在运行express服务器任务时抛出警告并中止。 警告如下: Running "express-server:devServer" (express-server) task Warning: Object function createServer() { function app(req, res, next){ app.handle(req, res, next); } merge(app, proto); merge(app, EventEmitter.prototype); app.route = '/'; app.stack = []; return app; } has no method 'static' Use –force to continue. Aborted due to warnings.