欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Ruby中檢測(cè)Gem是否安裝的方法

 更新時(shí)間:2015年01月19日 09:29:30   投稿:junjie  
這篇文章主要介紹了Ruby中檢測(cè)Gem是否安裝的方法,本文直接給出實(shí)現(xiàn)代碼以及使用方法,需要的朋友可以參考下

最近參加七牛的demo大賽,決定使用ruby開發(fā)。于是遇到了一些疑問,然后解決了,這里記錄一下。

在Ruby中,Gem是一個(gè)很常見的東西,其相當(dāng)于插件,Ruby有很多很棒的gem,避免了我們重復(fù)造輪子,我的demo中需要安裝gem,但是為了更加實(shí)現(xiàn)好一些,先檢測(cè)gem是否已經(jīng)安裝,如果沒有安裝,在繼續(xù)安裝,否則不安裝。

于是,怎么在Ruby中檢測(cè)gem是否安裝呢,其實(shí)也很簡(jiǎn)單,直接上代碼就可以了。不需太多解釋。begin…rescue…相當(dāng)于java中的try catch。

復(fù)制代碼 代碼如下:

#!/usr/bin/env ruby
# encoding: utf-8

def checkGemAvailable(gemName, versionLimit=nil)
    isAvailable = false
    begin
        if versionLimit == nil
            gem  gemName
        else
            gem  gemName, versionLimit
        end
        isAvailable = true
    rescue LoadError
    end
    isAvailable
end

跑起來(lái)看一看

復(fù)制代碼 代碼如下:

puts checkGemAvailable('rack')
puts checkGemAvailable('rack', '>=2')

我機(jī)器的rack信息

復(fù)制代碼 代碼如下:

rack (1.5.2)

所以上面執(zhí)行的結(jié)果為

復(fù)制代碼 代碼如下:

true
false

相關(guān)文章

  • redis集群搭建教程及遇到的問題處理

    redis集群搭建教程及遇到的問題處理

    本文主要給大家講訴的是如何搭建redis集群的方法以及在此過(guò)程中需要注意的問題,非常不錯(cuò),推薦給大家,有需要的小伙伴可以來(lái)參考下
    2017-09-09
  • Ruby中關(guān)于hash的基本使用方法

    Ruby中關(guān)于hash的基本使用方法

    這篇文章主要介紹了Ruby中關(guān)于hash的基本使用方法,包括哈希的創(chuàng)建和一些內(nèi)置方法的使用,需要的朋友可以參考下
    2015-05-05
  • Ruby中類變量和實(shí)例變量的比較

    Ruby中類變量和實(shí)例變量的比較

    這篇文章主要介紹了Ruby中類變量和實(shí)例變量的比較,本文講解了4點(diǎn)類變量和實(shí)例變量的不同之處,并給出了代碼實(shí)例,需要的朋友可以參考下
    2015-05-05
  • ruby中的雙等號(hào)==問題詳解

    ruby中的雙等號(hào)==問題詳解

    Ruby里面有4種比較方法,equal?, eql?, ==, ===,而且在不同的類里面表現(xiàn)的很不一樣。在使用的時(shí)候也特別容易搞糊涂。 本文先給大家講述一下==號(hào)的用法及使用中應(yīng)該注意的地方
    2016-02-02
  • Ruby遍歷文件夾同時(shí)計(jì)算文件的md5sum

    Ruby遍歷文件夾同時(shí)計(jì)算文件的md5sum

    這篇文章主要介紹了Ruby遍歷文件夾同時(shí)計(jì)算文件的md5sum,本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下
    2015-05-05
  • Python的Flask框架中SERVER_NAME域名項(xiàng)的配置教程

    Python的Flask框架中SERVER_NAME域名項(xiàng)的配置教程

    SERVER_NAME項(xiàng)在Flask的路由配置中至關(guān)重要,特別是在配置絕對(duì)url和子域名的操作中,這里我們就來(lái)看一下Python的Flask框架中SERVER_NAME項(xiàng)的配置教程:
    2016-06-06
  • 淘寶網(wǎng)提供的國(guó)內(nèi)RubyGems鏡像簡(jiǎn)介和使用方法

    淘寶網(wǎng)提供的國(guó)內(nèi)RubyGems鏡像簡(jiǎn)介和使用方法

    由于國(guó)內(nèi)的網(wǎng)絡(luò)環(huán)境,導(dǎo)致 rubygems.org 存放在 Amazon S3 上面的資源文件間歇性連接失敗,因此使用gem或bundle時(shí)常常會(huì)遇到長(zhǎng)久無(wú)響應(yīng)的情況
    2014-04-04
  • Ruby中的p和puts的使用區(qū)別淺析

    Ruby中的p和puts的使用區(qū)別淺析

    這篇文章主要介紹了Ruby中的p和puts的使用區(qū)別淺析,本文用一個(gè)實(shí)例講解了它們之間的區(qū)別,并總結(jié)出結(jié)論,需要的朋友可以參考下
    2015-03-03
  • Ruby 中的 module_function 和 extend self異同

    Ruby 中的 module_function 和 extend self異同

    本文主要給大家介紹了在Ruby中 module_function 和 extend self的共同點(diǎn)和區(qū)別,非常的詳細(xì),也很實(shí)用,方便大家更好的理解的module_function 和 extend self
    2017-05-05
  • 詳解Ruby中范圍的概念

    詳解Ruby中范圍的概念

    這篇文章主要介紹了詳解Ruby中范圍的概念,需要的朋友可以參考下
    2015-05-05

最新評(píng)論