我已经在这些相同的行中看到了很多问题但是我已经尝试了捆绑更新并提交更新的Gemfile.lock但没有成功。这是我尝试推送到我的heroku git repo时的输出:
-----> Ruby app detected
-----> Compiling Ruby/Rails
-----> Using Ruby version: ruby-1.9.3-jruby-1.7.4
-----> Installing JVM: openjdk7-latest
-----> Installing dependencies using Bundler version 1.3.2
Ruby version change detected. Clearing bundler cache.
Old: jruby 1.7.4 (1.9.3p392) 2013-07-24 fffffff on OpenJDK 64-Bit Server VM 1.7.0_25-b30 [linux-amd64]
New: jruby 1.7.4 (1.9.3p392) 2013-07-24 fffffff on OpenJDK 64-Bit Server VM 1.7.0_45-b31 [linux-amd64]
Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin --deployment
Picked up JAVA_TOOL_OPTIONS: -Djava.rmi.server.useCodebaseOnly=true
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.
You have added to the Gemfile:
* source: git://github.com/gregbell/active_admin.git (at master)
You have deleted from the Gemfile:
* source: https://github.com/gregbell/active_admin.git (at master)
You have changed in the Gemfile:
* activeadmin from `git://github.com/gregbell/active_admin.git (at master)` to
`no specified source`
Bundler Output: Picked up JAVA_TOOL_OPTIONS: -Djava.rmi.server.useCodebaseOnly=true
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.
You have added to the Gemfile:
* source: git://github.com/gregbell/active_admin.git (at master)
You have deleted from the Gemfile:
* source: https://github.com/gregbell/active_admin.git (at master)
You have changed in the Gemfile:
* activeadmin from `git://github.com/gregbell/active_admin.git (at master)` to
`no specified source`
!
! Failed to install gems via Bundler.
!
! Push rejected, failed to compile Ruby app
有没有人知道为什么会失败?显示active_admin更改的行自很久以前就没有更新过,从那时起就已经对heroku进行了推送。
同样关于You are trying to install in deployment mode after changing your Gemfile
我已经运行了bundle install并添加了我的Gemfile.lock并多次推送。在我的项目中运行git状态的视图:
# On branch master
# Untracked files:
# (use "git add <file>..." to include in what will be committed)
#
# .ruby-version
# app/assets/stylesheets/_base.scss
# app/assets/stylesheets/_colors.scss
# app/assets/stylesheets/_footer.scss
# app/assets/stylesheets/_forms.scss
# app/assets/stylesheets/_header.scss
# app/assets/stylesheets/_icons.scss
# app/assets/stylesheets/_k.scss
# app/assets/stylesheets/_k_mixins.scss
# app/assets/stylesheets/_k_ratings.scss
# app/assets/stylesheets/_project_windows.scss
# app/assets/stylesheets/_reset.scss
# app/assets/stylesheets/application.scss
# app/assets/stylesheets/ie_fixes.scss
# app/assets/stylesheets/mixins.scss
nothing added to commit but untracked files present (use "git add" to track)
和我的.gitignore:
# See http://help.github.com/ignore-files/ for more about ignoring files.
#
# If you find yourself ignoring temporary files generated by your text editor
# or operating system, you probably want to add a global ignore instead:
# git config --global core.excludesfile '~/.gitignore_global'
# Ignore bundler config.
/.bundle
# Ignore the default SQLite database.
/db/*.sqlite3
/db/*.sqlite3-journal
# Ignore all logfiles and tempfiles.
/log/*.log
/tmp
# Ignore database config file
database.yml
*.iml
.rvmrc
.idea
答案 0 :(得分:1)
如果您在本地计算机上运行bundle
时使用的是Bundler 1.4的预发布版本,那么您遇到的问题是github gems的URL从使用git
协议更改为https
:https://github.com/bundler/bundler/issues/2600
要解决此问题,您应该在本地更新到更新的Bundler 1.4预发行版(通过运行gem install --pre bundler
或删除Bundler 1.4预发行版并使用1.3.x。
答案 1 :(得分:0)
这个问题很糟糕,因为你将坏(旧)Gemfile.lock提交给heroku服务器。 你需要在添加/删除gems后更新heroku上的Gemfile.lock。
执行以下步骤: