Make 是一个 UNIX® 的本机实用程序,是为管理软件编译过程而设计的。它十分通用,足以用于许多其他环境中,即使它已用于将文档编译成书,维护 Web 站点以及裁减发行版。但是,make 也有自身的约束。它具有自己的语法,这取决于制表符的(tabbed)和非制表符的(nontabbed)空白空间。许多其他工具已经进行了扩展,可以弥 补 make 的一些不足,如 Aegis 和 Ant,但这两者也都具有自己的问题。
Make 以及类似的工具都有改进的余地,但是它们都不可能让 Ruby 黑客十分开心。您从这里要去哪里?幸好,可以使用一些 Ruby 选项。Rant 是一个由 Stefan Lang 编写的工具(请参阅 参考资料)。Rant 仍处于开发周期的初级阶段,因此它可能还没有成熟到足以适用于每个人。Jim Weirich 编写的 Rake 是一个在 Ruby 社区中广泛使用的成熟系统。
Rake 是用 Ruby 编写的,并使用 Ruby 作为它的语法,因此学习曲线很短。Rake 使用 Ruby 的元编程功能来扩展语言,使之更利落地适应自动化任务。Rake 附带的 rdoc 中列出了一些优点(请注意,前两个是诸如 make 的其他任务自动化工具所共有的):
Rake是基于ruby语言的项目中用于自动化字形任务的一个友好又非常强大的工具 基于我们使用rake的目的,让我们来看一些简单的例子: 安装Rake # 在Gemfile中添加rake gem 'rake', '~> 10.4.2' # 执行安装 bundle install Rake语法 Rake任务约定如下: desc '...' task :name do # task code ...
通常我们创建一个新的项目的时候,会建立一个test或者spec的文件夹来存放测试的文件,运行这些测试需要单独的命令,比如在项目目录下执行rspec .或者ruby test.rb等等,这些测试的工具中大多也都提供了更方便的方式来运行这些测试,但是如果你喜欢用Rake的话,那就有另外一个选择Rake::TestTask。 先上代码: require "rake/testtask"
本文的例子来源于Ruby on Rails Rake Tutorial Rake是make衍生出来的一个工具。 像make一样,它需要一个Rakefile的文件来做为默认的任务定制文件。在这个文件里可以指定一些任务,由rake来解释执行。 task :purchaseAlcohol do puts "Purchased Vodka" end task :mixDrink do puts "
Raven 1.1: Build Java with Ruby http://www.theserverside.com/news/thread.tss?thread_id=42923 来自新闻, 有否技术含量得试过才知 [img]http://www.theserverside.com/tt/skin/images/header_logotype.gif[/img] Raven 如果得势了, 请
傳統作法是用 rake blah foo=1 這樣的指令,於是就可以透過環境變數拿到: task :blah do puts ENV['foo'] end 但是,最近看到新的 API 使用中括號的用法 (也不新了,從 0.8.2 開始支援),覺得挺有趣的: desc "passing 1 parameter to rake task" task :blah1, [:a
db:create 在当前的RAILS_ENV环境创建数据库,如果这个环境变量没有设好,那就默认创建开发和测试数据库。 db:create:all 为所有的环境创建数据库,比如开发,测试,生产环境等。 db:drop 删掉指定环境的库,如果没有指定的话,就删掉开发测试的数据库,与第一条一个意思。 db:drop:all 干掉所有环境的数据库。 db:migrate 跑一下当前环境的migratio
Ruby:uninitialized constant ActiveSupport::Dependencies::Mutex (NameError) 转载:http://hi.baidu.com/linuxerror/blog/item/f687603be6f5212871cf6cc3.html : uninitialized constant ActiveSupport::Dependenci
rake [-f rakefile] {options} targets... Options are ... -C, --classic-namespace Put Task and FileTask in the top level namespace -D, --describe [PATTERN] Describe the tasks (matching optional PATTERN)
以前听说过ruby是因为Ruby On Rails,但是我对web却没有什么研究,所以也就不会去尝试ruby。最近想做一个跨平台的C++程序,所以我开始使用MinGW,但是用习惯了MS套餐的我对make始终不是很精通,找时间看了make指南,虽然我能完成项目组织功能,但是却不是很满意,因为不够智能和灵活。类UNIX系统是鼓励使用小程序组合完成复杂任务的,但是我对UNIX却不熟悉,要我在ma
命令行 rake db:***** script/generate model task name:string priority:integer script/generate migration add_description_to_task description:string script/generate migration remove_description_from_tas
本文是Rake教程的一篇翻译。原文:http://docs.rubyrake.org/tutorial/chapter01.html Rake是ruby写的构建工具,采用ruby作为构建语言。Rake在作用和目的上与make类似。Rake一个简单的ruby构建程序与make类似。 Rake有以下特征: 1. Rakefiles(Rake版本的Makefiles)完全采用ruby语法定义,不需编辑
一、rake脚本的作用 以任务的方式创建和运行脚本 当然,你可以用脚本来创建每一个你希望自动运行的任务。但是,对于大型的应用来说,你几乎总是需要为数据库迁移(比如Rails中db:migrate任务)、清空缓存、或者代码维护等等编写脚本。对于每一项任务,你可能都需要写若干脚本,这会让你的管理变得复杂。那么,把它们用任务的方式整理到一起,会让管理变得轻松很多。 追踪和管理任务之间的依赖 Rake还提
问题: wyy@wyy:~/moumentei-master$ rake db:create rake aborted! You have already activated rake 10.1.0, but your Gemfile requires rake 10.0.3. Using bundle exec may solve this. 解决: Remove rake 10.1.0 gem
原文: Ruby on Rails Rake Tutorial (aka. How rake turned me into an alcoholic) 引言:作为一个 rails 的开发者,你可能很熟悉使用 rake 进行你的测试,或者使用 rake db:migrate 运行你的 migrations ,但是你真的知道 Rake 的背后故事吗?你意识到可以自己写一个 Rake 任务或者一个有
错误: rake aborted! Gem::LoadError: You have already activated rake 10.3.2, but your Gemfile requires rake 10.1.1. Prepending `bundle exec` to your command may solve this. 解决: bundle exec rake db:migrat
http://www.iteye.com/topic/300375 Rake(http://rake.rubyforge.org)是一门构建语言,和make(www.gnu.org/software/make/) ant(http://ant.apache.org)很想象。Rake是用Ruby写的,它支持它自己的DSL用来处理和维护 Ruby应用程序。Rails用rake的扩展来完成多
在rails中,rake用来编写任务脚本,让我们在cli中可以执行,提供了良好的任务编写结构,并且方便执行相互依赖的任务 rails项目中,rake文件存放位置:lib/tasks/user.rake 1.without namespace: task :sayhi do puts "hi" end 执行 rake sayhi 即可 2.with namespace namespace :us
在安装redmine的时候,发现执行rake db:migrate RAILS_ENV="production"创建数据库的时候报错,上网一查,说是rake版本过高,要重新安装rake 0.8.7~这个要怎么安装呢?已经下载了压缩包,但是覆盖到哪个目录完全不知道,因为路径不匹配! 解决办法:首先进入redmine目录下进行操作,gem list -v查看你的rake版本,如果存在0.9.*版本的就
rails 当执行错误的migrate后 需要 执行 rake db:rollback
转载:http://hi.baidu.com/fengwill/blog/item/c80a8d829b0310aa6d811921.html 命令列表 rake db:migrate 命令作用:将所有未实施的迁移任务都实施到目标数据库上。 rake db:migrate VERSION=20080906120000 命令作用:撤销迁移任务到指定版本 迁移版本信息可以在所创建库(如el
本文向大家介绍Ruby中任务构建工具rake的入门学习教程,包括了Ruby中任务构建工具rake的入门学习教程的使用技巧和注意事项,需要的朋友参考一下 Rake简介 Rake的意思是Ruby Make,一个用ruby开发的代码构建工具. 但是,为什么Ruby需要Rake? 按理说Ruby代码无需编译,应该不需要Rake才对呀?原来,Rake另有妙用,即把Rake当做一个任务管理工具来使用.
Spring Boot为Maven和Gradle提供构建工具插件。 这些插件提供了各种功能,包括可执行jar的包装。 本节提供了有关这两个插件的更多详细信息,以及在需要扩展不受支持的构建系统时的一些帮助。
一、构建工具的作用 二、Java 主流构建工具 三、Maven 参考资料 一、构建工具的作用 构建一个项目通常包含了依赖管理、测试、编译、打包、发布等流程,构建工具可以自动化进行这些操作,从而为我们减少这些繁琐的工作。 其中构建工具提供的依赖管理能够可以自动处理依赖关系。例如一个项目需要用到依赖 A,A 又依赖于 B,那么构建工具就能帮我们导入 B,而不需要我们手动去寻找并导入。 在 Java 项
你需要的就是一套工具,能把你自动化构建的需求表示成可执行的顺序的任务(tasks),比如编译源代码,拷贝生成的class文件,组装交付。每一个任务都是一个工作单元,任务的顺序很重要,我们把任务和相互之间的依赖建模成一种有向无环图,比如下面这个: 有向无环图 包含两个部分: 节点(node):一个工作单元,在这里就是一个任务,比如编译源代码 边(edge): 一个有方向的边,表示相邻节点之间的依赖关
詹金斯的新成员。 目前,我们使用maven和Subversion作为SCM进行手动构建: > 在本地工作副本文件夹中,POM文件有1.1.1-SNAPSHOT,issue mvn release:clean release:prepare-p all modules 这将创建一个标记https://avn/path/to/tag/xxx-1.1.1,而我的本地工作副本仍在1.1.2-SNAPSHO
我们使用VSTS构建使用ASP.Net模板。我们传递MSBuild参数如下- /p:DeployOnBuild=true /p:WebP发布方法=包 /p:包作为单一文件=真 /p:跳过验证配置=真 /p:包位置=“$(build.artifactstage 目录)\” 我们没有看到任何构建错误。从日志中,我们观察到一条线 - C:\Windows\Microsoft.NET\Framework\
源码压缩包(tarball)会严重损害你的健康。你既可以使用 发行版(distro)或第三方软件包, 同时从源码包构建你自己的软件包也是可取的,这有时还会有许多工作要做。 创建 Debian 软件包(或者其他风格的软件包)会是一个漫长而容易出错的过程, 而且你可能没有时间或预算构建它。 如果你必须从源代码构建你的程序,至少 Puppet 可以帮你实现这一过程。 一般地构建过程是自动化的,否则你就得
软件生命周期 问题定义 要求系统分析员与用户进行交流,弄清“用户需要计算机解决什么问题”然后提出关于“系统目标与范围的说明”,提交用户审查和确认 可行性研究 一方面在于把待开发的系统的目标以明确的语言描述出来 另一方面从经济、技术、法律等多方面进行可行性分析。 需求分析 确定软件系统的功能需求和非功能需求; 分析软件系统的数据要求: 导出系统的逻辑模型; 修正项目开发计划; 如有必要,可以开发一个