簡體   English   中英

Ubuntu 14.04-安裝pg(0.18.2)時發生錯誤,並且Bundler無法繼續

[英]Ubuntu 14.04 - An error occurred while installing pg (0.18.2), and Bundler cannot continue

這個問題不能讓我繼續前進,我也不知道我是否有可能在Heroku上部署我的Rails應用程序。

當我嘗試通過在Gemfile中包含gem'pg gem 'pg'進行bundle install ,出現以下錯誤。

An error occurred while installing pg (0.18.2), and Bundler cannot continue.

Make sure that gem install pg -v '0.18.2' succeeds before bundling.

但是,當我嘗試sudo gem install pg它說Successfully installed pg-0.18.2 1 gem installed

但是,當我嘗試在本地運行該應用程序或在Heroku上進行部署時,它再次給我同樣的錯誤。 通過在開發模式下使用sqlite3 ,一切都很好,但是在Heroku上也會發生相同的問題,因為Heroku不支持sqlite3。

您在本地安裝了PostgreSQL嗎? 如果不是,那可能就是原因(擁有gem 'pg'不足以在本地安裝它)。 您將必須運行sudo apt-get install postgresql postgresql-contrib進行安裝。

但是,只要有gem 'pg'就不需要在本地安裝它來推送到Heroku。 您可以通過在Gemfile中設置專門用於生產的其他組來實現。 就像是:

group :development, :test do
  gem 'sqlite3',     '1.3.9'
end
group :production do
  gem 'pg',             '0.17.1'
  gem 'rails_12factor', '0.0.2'
end

第一件事是您必須在生產中包含pg gem,在開發和測試環境中將sqlite包含在gem文件中

group :development, :test do
  gem 'sqlite3'
end
gem 'pg', group: :production

然后將寶石捆綁在生產環境之外

bundle install --without production

然后您可以提交並推動heroku。

暫無
暫無

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

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