gpt4 book ai didi

heroku - 在 Heroku 上部署应用程序时不应用 BUNDLE_WITHOUT

转载 作者:行者123 更新时间:2023-12-02 22:05:14 26 4
gpt4 key购买 nike

我的目标是在 Heroku 上为“heroku_production”环境部署应用。

我的 Gemfile 看起来像这样:

source 'https://rubygems.org'

gem 'rails', '3.2.9'

# Bundle edge Rails instead:
# gem 'rails', :git => 'git://github.com/rails/rails.git'

group :development, :test, :production do
gem 'sqlite3'
end
# This is needed in case this app is deployed in Heroku - in order to make the Heroku deployment independent from the production environment
group :heroku_production do
gem 'pg'
end
...

我将 BUNDLE_WITHOUT 变量设置为“development:test:production”。以下是调用 heroku config --app my_app 时的输出:

=== my_app Config Vars
BUNDLE_WITHOUT: development:test:production
DATABASE_URL: postgres://XXXXXXX....
HEROKU_POSTGRESQL_CYAN_URL: postgres://XXXXXXX....
RACK_ENV: heroku_production
RAILS_ENV: heroku_production

但是当我将我的东西推送到 Heroku 时,BUNDLE_WITHOUT var 没有应用,正如您在以下错误消息中看到的那样(第 3 行:--without development:test):

-----> Ruby/Rails app detected
-----> Installing dependencies using Bundler version 1.3.2
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
Fetching gem metadata from https://rubygems.org/.........
Fetching gem metadata from https://rubygems.org/..
Using rake (10.0.4)
...
Using pg (0.14.1)
Installing sqlite3 (1.3.7)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.
/usr/local/bin/ruby extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Try 'port install sqlite3 +universal'
or 'yum install sqlite-devel' and check your shared library search path (the
location where your sqlite3 shared library is located).
*** extconf.rb failed ***

An error occurred while installing sqlite3 (1.3.7), and Bundler cannot continue.
Make sure that `gem install sqlite3 -v '1.3.7'` succeeds before bundling.
!
! Failed to install gems via Bundler.
!
! Heroku push rejected, failed to compile Ruby/rails app

To git@heroku.com:my_app.git
! [remote rejected] 3dac67374c268d3bf9e051a6db39efc56ae81c76 -> master (pre-receive hook declined)

Heroku 为什么要这样做?
谷歌搜索也没有帮助。

最佳答案

Please note - for the time being, the Cedar stack does not support BUNDLE_WITHOUT.

发件人:https://devcenter.heroku.com/articles/bundler#specifying-gems-and-groups

关于heroku - 在 Heroku 上部署应用程序时不应用 BUNDLE_WITHOUT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16226005/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com