5

在一個Gemfile中排除某些寶石,有沒有辦法告訴捆紮機是這樣的:告訴捆紮機從特定寶石的安裝

gem 'twitter-bootstrap-rails', :exclude therubyracer 

我需要安裝Twitter的引導護欄,但它會自動提取therubyracer ,所以bundle install失敗,並且bootstrap不包含在項目中,因爲這是一臺Windows機器。我安裝execjs無濟於事。

我試圖列出therubyracer正在製作中,而bundle install --without production也無濟於事。

therubyracer gem on windows」也是這個問題,但沒有任何建議改變我得到的錯誤。

我的舊主題是「When I do "bundle update", I get an error from a gem not in my gemfile. How do I ignore this dependency?」。

回答

4

Bundler沒有這個選項。

所以你留下了這些選項:

  • 不要使用twitter-bootstrap-rails。您可以將編譯後的css和js文件複製到vendor/assets下的適當目錄中。你將失去改變更少變量的能力。或者你可以使用compass_twitter_bootstrap寶石,它使用sass而不是更少。

  • 獲取less寶石的維護者使用execjs而不是commonjstherubyracer。如果可能的話,這可能意味着對維護者的重構。

  • 在Gemfile中使用:platform選項,只能在OSX或Linux上安裝。然後要求您可以手動使用的零件,而不需要加載less。這可能不會起作用。

+0

謝謝主席先生:) – JakeP 2012-02-24 01:47:30

+1

這是相當跛:-(任何機會,捆紮機將在不久的將來,一個排除功能? – 2015-02-07 22:28:30

+0

哇,這是terrrible。因此,如果有人要看的東西你100%可以驗證確實沒有被調用,你只剩下分叉gem從gemfile中刪除該行以避免使用該依賴關係。 – duane 2017-04-21 19:01:57

相關問題