Tag: gem

停用Gem – “你已经激活了rake 0.9.3.beta.1,但我的Gemfile需要rake 0.9.2”

我正在尝试运行迁移,但我不断收到错误消息: rake aborted! Undefined method prerequisite for nil:NilClass. 似乎我以某种方式激活了一个名为rake 0.9.3.beta.1的gem – 但是我已经改变了gem bundle install并运行了bundle show rake,它显示安装了rake 0.9.2 。 我第一次使用Git所以我认为它可能与应用程序仍然使用rake的beta版本有关 – 但我已经完成了推送并且它显示了gemfile已经更新。 当我查看gem库时,我只能看到rake 0.9.2版本。 我应该在哪里看? 我也有一个Rails:Railtie弃用警告 – 但我认为这与我的迁移问题没有任何关系。 它告诉我在config / application.rb而不是Railtie中使用config.app_generators – 但我在文件中看不到。 这是Config / application.rb文件 require File.expand_path(‘../boot’, __FILE__) # Pick the frameworks you want: require “active_record/railtie” require “action_controller/railtie” require “action_mailer/railtie” require “active_resource/railtie” require “sprockets/railtie” Bundler.require […]

cap命令未找到

我正在使用Mac OS X 10.8.2,我用rbenv安装了ruby和rails。 我尝试安装capistrano gem install capistrano 成功安装了capistrano-2.13.5 安装1个gem 为capistrano-2.13.5安装ri文档… 为capistrano-2.13.5安装RDoc文档… 每当我尝试使用代码安装时,它会说“安装1个gem”。 但是,如果我写 capify . 我收到这样的错误。 zsh:找不到命令:capify 我的$ PATH /Users/lutfidemirci/.rbenv/bin:/Users/lutfidemirci/.rbenv/shims:/Users/lutfidemirci/.rbenv/shims:/Applications/Postgres.app/Contents/MacOS/bin:/Users/lutfidemirci/.rbenv /bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/var/lib/gems/1.8/bin

来自github的vagrant安装插件

我们正在使用Vagrant进行部署,我们最终希望在Rackspace上部署此集群。 vagrant-rackspace插件是一个很自然的选择,但它有一些错误,这些错误未包含在最新的0.1.1版本中( 特别是vagrant provision不起作用 )。 我通过合并其他人的工作,在我的存储库的个人分支中解决了这个问题。 是否可以从github安装一个vagrant插件? 明显的事情不起作用: [unix]$ vagrant plugin install vagrant-rackspace –plugin-source https://github.com/deanmalmgren/vagrant-rackspace Installing the ‘vagrant-rackspace’ plugin. This can take a few minutes… The plugin ‘vagrant-rackspace’ could not be found in local or remote repositories. Please check the name of the plugin and try again. 我是流浪汉和ruby的新手,所以任何指针都会非常感激。 谢谢!

为什么foreman gem忽略了PORT环境变量?

我希望foreman gem使用我的开发环境文件中提供的PORT值,而不是使用自己的值。 我的文件设置如下所示: 启动工头的bash脚本: 工头开始-e development.env development.env文件内容: PORT = 3000 Procfile内容 web:bundle exec rails server thin -p $ PORT -e $ RAILS_ENV $ 1 开发服务器最终从端口5000开始。我知道我可以使用–p 3000启动工头强制它使用该端口。 但这违背了env文件的目的。 有什么建议?

是否可以在不自动安装的情况下下载Ruby gem?

当我使用gem下载内容时,我希望能够下载gem,然后选择是否要安装它。 我问这个是因为我想在多台计算机上安装一个特定的gem(不需要在每台计算机上安装)。

如何获取已安装具有本机扩展名的gem列表?

我在Windows上,并已从ruby 1.8.x更新到1.9.x,现在我收到错误弹出窗口,抱怨ruby-mssomethingrt.1.8.x.dll丢失。 我想找出哪些gems具有原生扩展,因此我可以卸载它们并在安装期间强制在本地重建本机扩展,以使错误消失。

将rails更新为特定版本

如何将Rails更新为特定版本? 我在本地计算机上安装了Rails 3.2.2,但我需要更新到3.2.3版本。 如果我执行gem update rails ,它将更新到版本3.2.6,这是最新版本。 我怎样才能做到这一点?

如何在ruby中引用本地gem?

我将一些ruby代码打包到gem中。 我想在其他一些代码中引用gem中的代码。 所以在Gemfile中我指定了gem的名称,版本和本地路径。 喜欢: gem ‘gemname’,’0.x’, :path => ‘RELATIVE_PATH_TO_GEM_FILE’ 捆绑安装后,我明白了 Using gemname (0.x) from source at RELATIVE_PATH_TO_GEM_FILE 但是当我运行代码时,它无法在gem中找到代码。 LOAD_PATH显示ABSOLUTE_PATH_TO_GEM_FILE / lib。 难怪它找不到代码,只有ABSOLUTE_PATH_TO_GEM_FILE下的gem文件。 它没有打开包装。 所以没有lib目录。 如果我gem将这个gem文件安装到我的系统中,那么一切正常。 我可以看到gem文件被解压缩到源代码文件中。 但我的问题是它是否可以直接引用本地gem文件?

深入Ruby Gem开发资源(书籍,video,网站)

我正在为Rails项目编写我的第一个Gem,并且正在寻找有关此主题的深入信息,我一无所获。 我不是在寻找“如何构建gem”,而是关于该主题的相关开发人员指南或资源(使用Ruby进行分布式编程等)。 我希望如果有人有好的参考资料? 提前致谢。

如果gem安装不支持原生扩展,则回退到纯Ruby

我正在开发一个gem,它目前是纯Ruby,但我也一直在为其中一个function开发一个更快的C变种。 该function在纯Ruby中可用,但有时很慢。 缓慢只会影响一些潜在用户(取决于他们需要哪些function,以及他们如何使用它们),因此如果无法在目标系统上编译,那么让gem可以优雅地回退到仅使用Ruby的函数是有意义的。 我想在一个gem中维护该function的Ruby和C变体,并在安装时提供gem的最佳(即最快)体验。 这将使我能够从我的一个项目中支持最广泛的潜在用户。 它还允许其他人的依赖gem和项目使用目标系统上最好的可用依赖性,而不是兼容性最低的通用分母版本。 我希望在运行时回退的require出现在主lib/foo.rb文件中,就像这样: begin require ‘foo/foo_extended’ rescue LoadError require ‘foo/ext_bits_as_pure_ruby’ end 但是,我不知道如何让gem安装检查(或尝试和失败)本机扩展支持,以便gem安装正确,无论它是否可以构建’foo_extended’。 当我研究如何做到这一点时,我主要发现了几年前的讨论,例如http://permalink.gmane.org/gmane.comp.lang.ruby.gems.devel/1479和http://rubyforge.org/ pipermail / ruby​​gems-developers / 2007-November / 003220.html暗示Rubygem并不真正支持这一function。 没什么新鲜的,所以我希望SO上有人有一些更新的知识? 我的理想解决方案是在尝试构建扩展之前检测目标Ruby不支持(或者可能根本不希望在项目级别)C本机扩展的方法。 但是,如果不是太脏,尝试/捕获机制也可以。 这有可能,如果是这样的话怎么样? 或者建议发布两个gem变体(例如foo和foo_ruby ),我在搜索时发现,仍然是目前的最佳实践?