草庐IT

ruby-on-rails - Ruby Gem 命令行工具

我正在尝试构建命令行rubygem.我正在使用bundler创建gem并在本地安装gem。它生成了所需的目录。我还能够测试如果我需要我的Gem我可以使用它里面的方法。我现在正在尝试让命令行工作,但似乎无法让它工作。我希望能够做类似的事情gemnamecommand类似于rspec作品:rspectest/whatever.rb任何关于如何能够通过命令行执行的帮助都会很棒。 最佳答案 为了声明可执行文件,您只需在yourgem.gemspec中添加一行:`gitls-files--bin/*`.split("\n").map{|f|F

ruby - 当具有更高版本的系统范围的 gem 也可用时,如何在 ruby​​ 中要求用户安装的 gem?

我安装了两个版本的gem:系统范围的1.3.2,和用户安装的1.0.0。我只需要使用安装在我家的版本1.0.0目录。有没有办法告诉gem更喜欢用户安装的gem? 最佳答案 您可以在要求之前使用gem命令指定要使用的gem版本。gem'foo','1.0.0'require'foo' 关于ruby-当具有更高版本的系统范围的gem也可用时,如何在ruby​​中要求用户安装的gem?,我们在StackOverflow上找到一个类似的问题: https://stac

ruby - 安装 JSON gem 的 native 扩展错误

我已经设置了BrightboxRuby2.1.0apt包并在安装json包时遇到native编译错误。$sudogeminstalljson-v'1.8.1'Fetching:json-1.8.1.gem(100%)Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingjson:ERROR:Failedtobuildgemnativeextension./usr/bin/ruby2.1extconf.rbmkmf.rbcan'tfindheaderfilesforrubyat/usr/lib/ruby/i

ruby-on-rails - gem 安装 kgio 2.9.2 报错

伙计,现在当我捆绑安装我的ruby​​onRails项目时它给我错误extconffailed,exitcode1Gemfileswillremaininstalledinc:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/kgio-2.9.2forinspection.Resultsloggedtoc:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/extensions/x86-mingw32/1.9.1/kgio-2.9.2/gem_make.outAnerroroccurredwhi

ruby - 如何使用 Ruby listen gem 监控单个文件?

我正在尝试使用listengem(https://github.com/guard/listen)来监听特定文件,但到目前为止只能获得正常监听整个目录的基本功能。这是我目前正在尝试的示例:require"listen"moduleFileTrackerfiledir="/home/user/dir"filenames=["file1","file2"]#Shouldonlytrack'file1'and'file2'inthisdirectorylistener=Listen.to(filedir,only:filenames)do|modified,added,removed|put

ruby - 找不到 ERB gem

我知道如何使用erb,并且已经在rails和独立的ruby​​应用程序中使用过。我不知道它来自哪里,因为我从未安装过它,但它就在那里。我在我的mac上使用了rbenv。我使用rails安装程序在Windows8计算机上安装了ruby​​,但似乎无法访问erb。如何安装erb???(或者我遗漏了什么) 最佳答案 ERB模块随附在Ruby中的标准库。你只需要要求它。require'erb'temp=""erb=ERB.new(temp)var="hi"erb.result(binding)#=>"hi"

ruby - 从本地源代码运行 gem

我目前正在开发一个gem,我希望能够从命令行运行该gem并将其指向我的本地源。以前我通过在gem文件中指定路径在rails中完成此操作,但现在我想在非rails应用程序上运行gem。所以我想知道如何从命令行调用gem并指定我要使用某个目录中的源代码。例如,我可以cd进入我想要运行它的目录并执行如下操作:rubymy_gem--path=~/code/mygem另外,我是否必须构建它们gem,或者我是否可以在不构建的情况下从源代码运行它? 最佳答案 从你的gem的根目录,尝试执行lib/MyGem.rb:ruby-Iliblib/My

ruby - 为什么 ruby​​(在 Travis CI 中)找不到我的 bundle installed gem?

我正在尝试设置TravisCI,但ruby​​没有按我预期的方式工作。看起来TravisCI正在正确运行我的bundle安装,但是ruby​​之后无法立即找到ruby​​gems。这是Travis日志:$ruby--versionruby2.0.0p481(2014-05-08revision45883)[x86_64-darwin13.1.0]$rvm--versionrvm1.25.33(stable)byWayneE.Seguin,MichalPapis[https://rvm.io/]$bundle--versionBundlerversion1.7.4[...snip...]

ruby-on-rails - 带有 WARN 的 jekyll -v:Gem::Specification.reset 期间 Unresolved 规范:

我想使用HPSTRjekyll主题,当我执行jekyllserve时,终端向我抛出错误:/Library/Ruby/Gems/2.0.0/gems/bundler-1.10.3/lib/bundler/spec_set.rb:92:in`blockinmaterialize':Couldnotfindcoffee-script-source-1.9.1inanyofthesources(Bundler::GemNotFound)from/Library/Ruby/Gems/2.0.0/gems/bundler-1.10.3/lib/bundler/spec_set.rb:85:in`m

ruby - 从 github 源安装的 Gem 未在 `gem list` 中显示

我尝试从github源安装一些gem,它已成功安装,但之后它没有显示在gemlist输出中并且不能被要求。我的gem在私有(private)仓库中,但我可以在随机公共(public)仓库中重现这些步骤。例如:我用以下内容创建Gemfile:source'http://rubygems.org'gem'http_parser.rb',git:'https://github.com/tmm1/http_parser.rb.git'我调用了bundleinstall,它的输出是:Fetchinghttps://github.com/tmm1/http_parser.rb.gitFetchin