簡體   English   中英

指南針,自舉程序和紅寶石1.8.7

[英]Compass, bootstrap-sass and ruby 1.8.7

在我最終設法使Compass在托管的Web空間上運行(沒有root用戶訪問權限)之后,嘗試安裝bootstrap-sass時出現了一個新問題:

$ compass watch
LoadError on line 31 of /usr/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb: no such file to load -- bootstrap-sass

gem install bootstrap-sass
ERROR:  Error installing bootstrap-sass:
        execjs requires Ruby version >= 1.9.3.

好吧,這很明顯是怎么回事:我需要Ruby> = 1.9.3,而服務器僅提供1.8.7。 我已經檢查過:無法在該服務器上使用其他紅寶石版本。

有什么方法/破解/解決方案來使用bootstrap-sass嗎?

當gem依賴於特定(或更新)版本的Ruby時,原因通常是該gem依賴或使用了舊版本中不存在的功能。

Ruby 1.8.71.9.3之間有很多區別 :新的哈希語法,更好的UTF8支持以及行為改變的新方法-僅舉幾例。

如果為1.9.3構建了gem,並且您想將tat gem與較舊的版本一起使用,則只能選擇恕我直言:分叉該gem,查看源代碼並重寫與1.8.7不兼容的所有內容。

您將很可能了解到此類寶石依賴於其他寶石,這些寶石也依賴於Ruby的最新版本。 對那些寶石做同樣的事情...

我完全同意,仍然使用Ruby 1.8.7不是一個好主意。 我不知道為什么我的托管服務商仍然使用這么老的版本,但這只是我無法更改的事實。 當然,我可以搬到另一台主機上,但是現在我已經找到了一個可行的解決方案。 也許其他人也有同樣的問題。 所以這對我有用:

gem install bootstrap-sass無法工作,因為它需要execjs ,而最新版本需要Ruby> 1.9.3。 很高興bootstrap-sass不需要最新版本的execjs 因此解決方案很簡單:安裝對ruby 1.8.7滿意的execjs版本:

gem install execjs -v 2.5.0
gem install bootstrap-sass

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM