我正在尝试在ROR上为我的应用程序安装Jruby。使用其文档https://devcenter.heroku.com/articles/moving-an-existing-rails-app-to-run-on-jruby中的命令。捆绑安装遇到以下错误
此外某些宝石未成功安装,显示错误
安装libv8(3.16.14.3)时发生错误,而Bundler不能
继续。
在捆绑之前确保gem install libv8 -v '3.16.14.3'
成功。
无法找到问题。有人会帮忙吗?
Gemfile:
ruby '1.9.3', :engine => 'jruby', :engine_version => '1.7.9'
gem "rake"
gem "rails", "3.2.16"
gem 'foreigner'
gem 'activerecord-jdbcpostgresql-adapter'
gem 'jruby'
gem 'airbrake'
gem "spreadsheet", "~> 0.9.0"
gem 'paperclip'
gem 'aws'
gem 'aws-sdk'
gem 'aws-s3', :require => nil
gem 'authlogic'
gem 'execjs'
gem 'mail', :require => nil
gem 'fastercsv', :require => nil
gem "rspec-rails"
gem 'rubyzip', :require => nil
gem 'test-unit'
gem 'typhoeus'
gem 'thin'
gem 'therubyracer'
gem 'useragent'
gem 'will_paginate'
gem 'therubyracer'
gem 'libv8', '3.16.14.3'
答案 0 :(得分:3)
你不能在JRuby中使用'therubyracer'和'libv8'宝石。
简短回答:
改为使用'therubyrhino'宝石(https://github.com/cowboyd/therubyrhino)
说明:
有些宝石不能在JRuby下使用,因为它们使用的是本机(C)扩展名 - 这里有一个列表:https://github.com/jruby/jruby/wiki/C-Extension-Alternatives
答案 1 :(得分:2)
在安装Ruby / RVM之前,请确保安装以下所有库。
sudo apt-get install zlib1g zlib1g-dev build-essential openssl libssl-dev libmysqlclient18 libmysqlclient-dev libyaml-dev
在安装JRuby之前。
sudo apt-get install ruby-dev
sudo apt-get install build-essential g++
rvm install jruby
请勿指定Jruby版本,默认情况下您将获得最新版本。