微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在 Heroku 上部署 Ruby on Rails 项目失败 - 您已从 Gemfile 中删除:* pg

如何解决在 Heroku 上部署 Ruby on Rails 项目失败 - 您已从 Gemfile 中删除:* pg

我想将我的 rails 项目部署到 Heroku,但我出现了这个错误(构建日志详细信息在下面),然后我尝试了几种解决方案,例如:

bundle update
git add .
git push "Gemfile.lock"
git push heroku master
rm -rf ~/.bundle/ ~/.gem/ .bundle/ Gemfile.lock
bundle install
git push heroku master

并且还尝试了以下官方建议: https://devcenter.heroku.com/articles/bundler-version#bundler-2-2-3 但是还是无法解决

虽然上述解决方案可以解决某人的错误,但不适合我的问题。找了半天也没弄明白原因。

以下是一些可能使这个问题更完整的信息:

系统信息

OS: Ubuntu 20.04
Rails: Rails 6.1.4
Ruby: ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [x86_64-linux]
Bundle: Bundler version 2.2.19

Heroku 构建日志

-----> Building on the Heroku-20 stack
-----> Determining which buildpack to use for this app
 !     Warning: Multiple default buildpacks reported the ability to handle this app. The first buildpack in the list below will be used.
            Detected buildpacks: Ruby,Node.js
            See https://devcenter.heroku.com/articles/buildpacks#buildpack-detect-order
-----> Ruby app detected
-----> Installing bundler 2.2.21
-----> Removing BUNDLED WITH version in the Gemfile.lock
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-3.0.1
-----> Installing dependencies using bundler 2.2.21
       Running: BUNDLE_WITHOUT='development:test' BUNDLE_PATH=vendor/bundle BUNDLE_BIN=vendor/bundle/bin BUNDLE_DEPLOYMENT=1 bundle install -j4
       You are trying to install in deployment mode after changing
       your Gemfile. Run `bundle install` elsewhere and add the
       updated Gemfile.lock to version control.
       
       If this is a development machine,remove the /tmp/build_130d307f/Gemfile freeze 
       by running ``.
      
       You have deleted from the Gemfile:
       * pg
       Bundler Output: You are trying to install in deployment mode after changing
       your Gemfile. Run `bundle install` elsewhere and add the
       updated Gemfile.lock to version control.

       If this is a development machine,remove the /tmp/build_130d307f/Gemfile freeze 
       by running ``.

       You have deleted from the Gemfile:
       * pg
 !
 !     Failed to install gems via Bundler.
 !
 !     Push rejected,Failed to compile Ruby app.
 !     Push Failed

Gemfile

source 'https://rubygems.org'
git_source(:github) { |repo| "https://github.com/#{repo}.git" }

ruby '3.0.1'

gem 'rexml','~> 3.2','>= 3.2.4'
gem 'travis','~> 1.8','>= 1.8.10'
gem 'rails','~> 6.1.3','>= 6.1.3.2'
gem 'sqlite3','~> 1.4'
gem 'puma','~> 5.0'
gem 'sass-rails','>= 6'
gem 'webpacker','~> 5.0'
gem 'turbolinks','~> 5'
gem 'jbuilder','~> 2.7'
gem 'bootsnap','>= 1.4.4',require: false
gem 'pg'
gem 'rails-i18n'

group :development,:test do
  gem 'byebug',platforms: [:mri,:mingw,:x64_mingw]
  gem 'rspec-rails','~> 4.0.2'
end

group :development do
  gem 'web-console','>= 4.1.0'
  gem 'rack-mini-profiler','~> 2.0'
  gem 'listen','~> 3.3'
  gem 'spring'
end

group :test do
  gem 'capybara','>= 3.26'
  gem 'selenium-webdriver'
  gem 'webdrivers'
end

gem 'tzinfo-data',platforms: [:mingw,:mswin,:x64_mingw,:jruby]

Gemfile.lock

GEM
  remote: https://rubygems.org/
  specs:
    actioncable (6.1.4)
      actionpack (= 6.1.4)
      activesupport (= 6.1.4)
      nio4r (~> 2.0)
      websocket-driver (>= 0.6.1)
    actionmailBox (6.1.4)
      actionpack (= 6.1.4)
      activejob (= 6.1.4)
      activerecord (= 6.1.4)
      activestorage (= 6.1.4)
      activesupport (= 6.1.4)
      mail (>= 2.7.1)
    actionmailer (6.1.4)
      actionpack (= 6.1.4)
      actionview (= 6.1.4)
      activejob (= 6.1.4)
      activesupport (= 6.1.4)
      mail (~> 2.5,>= 2.5.4)
      rails-dom-testing (~> 2.0)
    actionpack (6.1.4)
      actionview (= 6.1.4)
      activesupport (= 6.1.4)
      rack (~> 2.0,>= 2.0.9)
      rack-test (>= 0.6.3)
      rails-dom-testing (~> 2.0)
      rails-html-sanitizer (~> 1.0,>= 1.2.0)
    actiontext (6.1.4)
      actionpack (= 6.1.4)
      activerecord (= 6.1.4)
      activestorage (= 6.1.4)
      activesupport (= 6.1.4)
      nokogiri (>= 1.8.5)
    actionview (6.1.4)
      activesupport (= 6.1.4)
      builder (~> 3.1)
      erubi (~> 1.4)
      rails-dom-testing (~> 2.0)
      rails-html-sanitizer (~> 1.1,>= 1.2.0)
    activejob (6.1.4)
      activesupport (= 6.1.4)
      globalid (>= 0.3.6)
    activemodel (6.1.4)
      activesupport (= 6.1.4)
    activerecord (6.1.4)
      activemodel (= 6.1.4)
      activesupport (= 6.1.4)
    activestorage (6.1.4)
      actionpack (= 6.1.4)
      activejob (= 6.1.4)
      activerecord (= 6.1.4)
      activesupport (= 6.1.4)
      marcel (~> 1.0.0)
      mini_mime (>= 1.1.0)
    activesupport (6.1.4)
      concurrent-ruby (~> 1.0,>= 1.0.2)
      i18n (>= 1.6,< 2)
      minitest (>= 5.1)
      tzinfo (~> 2.0)
      zeitwerk (~> 2.3)
    addressable (2.7.0)
      public_suffix (>= 2.0.2,< 5.0)
    backports (3.21.0)
    bindex (0.8.1)
    bootsnap (1.7.5)
      msgpack (~> 1.0)
    builder (3.2.4)
    byebug (11.1.3)
    capybara (3.35.3)
      addressable
      mini_mime (>= 0.1.3)
      nokogiri (~> 1.8)
      rack (>= 1.6.0)
      rack-test (>= 0.6.3)
      regexp_parser (>= 1.5,< 3.0)
      xpath (~> 3.2)
    childprocess (3.0.0)
    concurrent-ruby (1.1.9)
    connection_pool (2.2.5)
    crass (1.0.6)
    diff-lcs (1.4.4)
    erubi (1.10.0)
    ethon (0.14.0)
      ffi (>= 1.15.0)
    faraday (0.17.4)
      multipart-post (>= 1.2,< 3)
    faraday_middleware (0.14.0)
      faraday (>= 0.7.4,< 1.0)
    ffi (1.15.3)
    gh (0.14.0)
      addressable
      backports
      faraday (~> 0.8)
      multi_json (~> 1.0)
      net-http-persistent (>= 2.7)
      net-http-pipeline
    globalid (0.4.2)
      activesupport (>= 4.2.0)
    highline (1.7.10)
    i18n (1.8.10)
      concurrent-ruby (~> 1.0)
    jbuilder (2.11.2)
      activesupport (>= 5.0.0)
    json (2.5.1)
    launchy (2.5.0)
      addressable (~> 2.7)
    listen (3.5.1)
      rb-fsevent (~> 0.10,>= 0.10.3)
      rb-inotify (~> 0.9,>= 0.9.10)
    loofah (2.10.0)
      crass (~> 1.0.2)
      nokogiri (>= 1.5.9)
    mail (2.7.1)
      mini_mime (>= 0.1.1)
    marcel (1.0.1)
    method_source (1.0.0)
    mini_mime (1.1.0)
    minitest (5.14.4)
    msgpack (1.4.2)
    multi_json (1.15.0)
    multipart-post (2.1.1)
    net-http-persistent (4.0.1)
      connection_pool (~> 2.2)
    net-http-pipeline (1.0.1)
    nio4r (2.5.7)
    nokogiri (1.11.7-x86_64-linux)
      racc (~> 1.4)
    pg (1.2.3)
    public_suffix (4.0.6)
    puma (5.3.2)
      nio4r (~> 2.0)
    pusher-client (0.6.2)
      json
      websocket (~> 1.0)
    racc (1.5.2)
    rack (2.2.3)
    rack-mini-profiler (2.3.2)
      rack (>= 1.2.0)
    rack-proxy (0.7.0)
      rack
    rack-test (1.1.0)
      rack (>= 1.0,< 3)
    rails (6.1.4)
      actioncable (= 6.1.4)
      actionmailBox (= 6.1.4)
      actionmailer (= 6.1.4)
      actionpack (= 6.1.4)
      actiontext (= 6.1.4)
      actionview (= 6.1.4)
      activejob (= 6.1.4)
      activemodel (= 6.1.4)
      activerecord (= 6.1.4)
      activestorage (= 6.1.4)
      activesupport (= 6.1.4)
      bundler (>= 1.15.0)
      railties (= 6.1.4)
      sprockets-rails (>= 2.0.0)
    rails-dom-testing (2.0.3)
      activesupport (>= 4.2.0)
      nokogiri (>= 1.6)
    rails-html-sanitizer (1.3.0)
      loofah (~> 2.3)
    rails-i18n (6.0.0)
      i18n (>= 0.7,< 2)
      railties (>= 6.0.0,< 7)
    railties (6.1.4)
      actionpack (= 6.1.4)
      activesupport (= 6.1.4)
      method_source
      rake (>= 0.13)
      thor (~> 1.0)
    rake (13.0.3)
    rb-fsevent (0.11.0)
    rb-inotify (0.10.1)
      ffi (~> 1.0)
    regexp_parser (2.1.1)
    rexml (3.2.5)
    rspec-core (3.10.1)
      rspec-support (~> 3.10.0)
    rspec-expectations (3.10.1)
      diff-lcs (>= 1.2.0,< 2.0)
      rspec-support (~> 3.10.0)
    rspec-mocks (3.10.2)
      diff-lcs (>= 1.2.0,< 2.0)
      rspec-support (~> 3.10.0)
    rspec-rails (4.0.2)
      actionpack (>= 4.2)
      activesupport (>= 4.2)
      railties (>= 4.2)
      rspec-core (~> 3.10)
      rspec-expectations (~> 3.10)
      rspec-mocks (~> 3.10)
      rspec-support (~> 3.10)
    rspec-support (3.10.2)
    rubyzip (2.3.0)
    sass-rails (6.0.0)
      sassc-rails (~> 2.1,>= 2.1.1)
    sassc (2.4.0)
      ffi (~> 1.9)
    sassc-rails (2.1.2)
      railties (>= 4.0.0)
      sassc (>= 2.0)
      sprockets (> 3.0)
      sprockets-rails
      tilt
    selenium-webdriver (3.142.7)
      childprocess (>= 0.5,< 4.0)
      rubyzip (>= 1.2.2)
    semantic_range (3.0.0)
    spring (2.1.1)
    sprockets (4.0.2)
      concurrent-ruby (~> 1.0)
      rack (> 1,< 3)
    sprockets-rails (3.2.2)
      actionpack (>= 4.0)
      activesupport (>= 4.0)
      sprockets (>= 3.0.0)
    sqlite3 (1.4.2)
    thor (1.1.0)
    tilt (2.0.10)
    travis (1.8.13)
      backports
      faraday (~> 0.9)
      faraday_middleware (~> 0.9,>= 0.9.1)
      gh (~> 0.13)
      highline (~> 1.6)
      launchy (~> 2.1)
      pusher-client (~> 0.4)
      typhoeus (~> 0.6,>= 0.6.8)
    turbolinks (5.2.1)
      turbolinks-source (~> 5.2)
    turbolinks-source (5.2.0)
    typhoeus (0.8.0)
      ethon (>= 0.8.0)
    tzinfo (2.0.4)
      concurrent-ruby (~> 1.0)
    web-console (4.1.0)
      actionview (>= 6.0.0)
      activemodel (>= 6.0.0)
      bindex (>= 0.4.0)
      railties (>= 6.0.0)
    webdrivers (4.6.0)
      nokogiri (~> 1.6)
      rubyzip (>= 1.3.0)
      selenium-webdriver (>= 3.0,< 4.0)
    webpacker (5.4.0)
      activesupport (>= 5.2)
      rack-proxy (>= 0.6.1)
      railties (>= 5.2)
      semantic_range (>= 2.3.0)
    websocket (1.2.9)
    websocket-driver (0.7.5)
      websocket-extensions (>= 0.1.0)
    websocket-extensions (0.1.5)
    xpath (3.2.0)
      nokogiri (~> 1.8)
    zeitwerk (2.4.2)

PLATFORMS
  x86_64-linux

DEPENDENCIES
  bootsnap (>= 1.4.4)
  byebug
  capybara (>= 3.26)
  jbuilder (~> 2.7)
  listen (~> 3.3)
  pg
  puma (~> 5.0)
  rack-mini-profiler (~> 2.0)
  rails (~> 6.1.3,>= 6.1.3.2)
  rails-i18n
  rexml (~> 3.2,>= 3.2.4)
  rspec-rails (~> 4.0.2)
  sass-rails (>= 6)
  selenium-webdriver
  spring
  sqlite3 (~> 1.4)
  travis (~> 1.8,>= 1.8.10)
  turbolinks (~> 5)
  tzinfo-data
  web-console (>= 4.1.0)
  webdrivers
  webpacker (~> 5.0)

RUBY VERSION
   ruby 3.0.1p64

BUNDLED WITH
   2.2.19

已经有了 Gemfile.lock 但仍然无法推送 Heroku。 "Screenshot" have Gemfile.lock but still fail to push on Heroku

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。