我想在Rails2.3.10作为我操作系统的“事件”gem之间切换,以便我可以在命令行调用它。这有可能吗?我没有使用rvm。也许是时候开始了。我尝试了geminstallrails--version=2.3.10,但这只是确保安装了gem的那个版本,它没有把它放在/usr/bin中/rails.(我确实已经为我的应用程序使用了bundler——但直到现在还不需要在操作系统级别对gem进行任何精确控制) 最佳答案 如果您的问题是运行特定版本的二进制文件,那么:rails--version#=>thelatestversionrails
有没有办法确定Rails中运行的Ruby版本(在Web上或通过script/console)?我安装了Ruby1.8.6,但我还安装了RubyEnterpriseEdition1.8.7-20090928,并希望确保它使用正确的安装。 最佳答案 使用这个全局常量:RUBY_VERSION其他相关的全局常量包括:RUBY_PATCHLEVELRUBY_PLATFORMRUBY_RELEASE_DATEirbsession的使用示例:irb(main):001:0>RUBY_VERSION=>"1.8.7"
我希望我的Ruby程序在Mac上和在Windows上做不同的事情。我怎样才能知道我的程序在哪个系统上运行? 最佳答案 使用RUBY_PLATFORM常量,并可选择将其包装在模块中以使其更友好:moduleOSdefOS.windows?(/cygwin|mswin|mingw|bccwin|wince|emx/=~RUBY_PLATFORM)!=nilenddefOS.mac?(/darwin/=~RUBY_PLATFORM)!=nilenddefOS.unix?!OS.windows?enddefOS.linux?OS.unix?
gem规范中~>版本要求的含义是什么?hanna-0.1.12dependson[haml(~>2.2.8)] 最佳答案 RubyGems手册将其称为pessimisticversionconstraint.假设您指定了一个由n部分组成的版本号,例如1.3(两部分)或3.5.6.2(4部分)作为约束。然后,为了满足约束,版本号必须满足以下两个条件版本号的前n-1部分必须与前n-1部分相同部分约束(例如1.x或3.5.6.x匹配,但0.x或3.5.7.x不要)和版本号的最后一部分必须大于等于最后一部分约束的一部分(例如1.9999和3
我有一堆ruby系统调用,如下所示,我想同时检查它们的退出代码,以便我的脚本在该命令失败时退出。system("VBoxManagecreatevm--nametest1")system("rubytest.rb")我想要类似的东西system("VBoxManagecreatevm--nametest1",0)这可能吗?我已经尝试过类似的方法,但也没有用。system("rubytest.rb")system("echo$?")或`rubytest.rb`exit_code=`echo$?`ifexit_code!=0raise'Exitcodeisnotzero'end
我无法切换当前的Ruby版本:➜~rvmlistrvmrubiesruby-1.9.2-p290[x86_64]ruby-1.9.3-p0[x86_64]➜~rvmuseruby-1.9.3-p0RVMisnotafunction,selectingrubieswith'rvmuse...'willnotwork. 最佳答案 已修复。我需要添加:[[-s"$HOME/.rvm/scripts/rvm"]]&&."$HOME/.rvm/scripts/rvm"#ThisloadsRVM到.zshrc
如何编写一段代码来比较一些版本字符串并获得最新的?例如字符串:'0.1'、'0.2.1'、'0.44'。 最佳答案 Gem::Version.new('0.4.1')>Gem::Version.new('0.10.1') 关于ruby-如何比较Ruby中的版本?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2051229/
我正在尝试找出指定gem的所有远程可用版本。我尝试使用:gemlistrhc--remote但它显示:***REMOTEGEMS***rhc(0.84.15)rhcp(0.2.18)rhcp_shell(0.2.12)有什么想法吗? 最佳答案 好吧,这比我想象的要容易(好吧,不是真的,让我们说它应该尽可能简单):gemlistrhc--remote--all哪个返回:***REMOTEGEMS***rhc(0.84.15,0.84.13,0.83.9,0.82.18,0.81.14,0.80.5,0.79.5,0.77.8,0.75
这个问题在这里已经有了答案:Can'tinstallgemsonOSX"ElCapitan"(15个答案)关闭7年前。我刚刚将我的Mac更新到OSX10.11ElCapitan,但一些精华没有保留。当我尝试运行不同gem的安装时出现问题...例如:>sudogeminstallcompass一旦我执行,我得到错误:>ERROR:Whileexecutinggem...(Errno::EPERM)Operationnotpermitted其他gem也会发生这种情况...我已经运行Homebrew并尝试再次安装Ruby,但没有任何效果。
我需要将我的Ruby版本从2.0.0更新到最新版本。我不能使用一些gem,因为我的版本没有更新。我用过Homebrew前段时间安装Ruby。如何更新我的Ruby版本? 最佳答案 打开终端并运行curl-sSLhttps://raw.githubusercontent.com/rvm/rvm/master/binscripts/rvm-installer|bash-sstable完成后,您需要重新启动终端,rvm命令才能工作。现在,运行rvmlistknown这显示了Ruby解释器的版本列表。现在,运行rvminstallruby