ruby-on-rails – Bundler无法继续;解析’Gemfile’时出错:()
发布时间:2020-12-16 21:06:12 所属栏目:百科 来源:网络整理
导读:使用这些安装说明时,https://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_30x_on_Ubuntu_1404_with_Apache2_Phusion_Passenger_MySQL_Subversion_and_Git_%28Gitolite%29, 我执行以下命令时遇到了问题 bundle install --without developme
使用这些安装说明时,https://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_30x_on_Ubuntu_1404_with_Apache2_Phusion_Passenger_MySQL_Subversion_and_Git_%28Gitolite%29,
我执行以下命令时遇到了问题 bundle install --without development test postgresql sqlite 并得到以下错误. redmine@zaps-VirtualBox:~/redmine$bundle install --without development test postgresql sqlite [!] There was an error parsing `Gemfile`: (<unknown>): found character that cannot start any token while scanning for the next token at line 10 column 13. Bundler cannot continue. # from /opt/redmine/redmine-3.0.4/Gemfile:57 # ------------------------------------------- # database_config = YAML::load(ERB.new(IO.read(database_file)).result) # adapters = database_config.values.map {|c| c['adapter']}.compact.uniq # ------------------------------------------- 我用这个工具http://www.yamllint.com/检查了YAML语法,但没有任何动摇. 正如在代码中看到的那样,我评论了相关的行并简单地重写了它(一个IT人员建议使用制表语法或空格作为问题)也无济于事. 我的Gemfile如下; if Gem::Version.new(Bundler::VERSION) < Gem::Version.new('1.5.0') abort "Redmine requires Bundler 1.5.0 or higher (you're using #{Bundler::VERSION}).nPlease update with 'gem update bundler'." end gem "rails","4.2.3" gem "jquery-rails","~> 3.1.3" gem "coderay","~> 1.1.0" gem "builder",">= 3.0.4" gem "request_store","1.0.5" gem "mime-types" gem "protected_attributes" gem "actionpack-action_caching" gem "actionpack-xml_parser" # Windows does not include zoneinfo files,so bundle the tzinfo-data gem gem 'tzinfo-data',platforms: [:mingw,:x64_mingw,:mswin,:jruby] gem "rbpdf","~> 1.18.6" # Optional gem for LDAP authentication group :ldap do gem "net-ldap","~> 0.3.1" end # Optional gem for OpenID authentication group :openid do gem "ruby-openid","~> 2.3.0",:require => "openid" gem "rack-openid" end platforms :mri,:mingw,:x64_mingw do # Optional gem for exporting the gantt to a PNG file,not supported with jruby group :rmagick do gem "rmagick","~> 2.13.4" end # Optional Markdown support,not for JRuby group :markdown do gem "redcarpet","~> 3.1.2" end end platforms :jruby do # jruby-openssl is bundled with JRuby 1.7.0 gem "jruby-openssl" if Object.const_defined?(:JRUBY_VERSION) && JRUBY_VERSION < '1.7.0' gem "activerecord-jdbc-adapter","~> 1.3.2" end # Include database gems for the adapters found in the database # configuration file require 'erb' require 'yaml' database_file = File.join(File.dirname(__FILE__),"config/database.yml") if File.exist?(database_file) # database_config = YAML::load(ERB.new(IO.read(database_file)).result) database_config = YAML::load(ERB.new(IO.read(database_file)).result) adapters = database_config.values.map {|c| c['adapter']}.compact.uniq if adapters.any? adapters.each do |adapter| case adapter when 'mysql2' gem "mysql2","~> 0.3.11",:platforms => [:mri,:x64_mingw] gem "activerecord-jdbcmysql-adapter",:platforms => :jruby when 'mysql' gem "activerecord-jdbcmysql-adapter",:platforms => :jruby when /postgresql/ gem "pg","~> 0.17.1",:x64_mingw] gem "activerecord-jdbcpostgresql-adapter",:platforms => :jruby when /sqlite3/ gem "sqlite3",:x64_mingw] gem "jdbc-sqlite3",">= 3.8.10.1",:platforms => :jruby gem "activerecord-jdbcsqlite3-adapter",:platforms => :jruby when /sqlserver/ gem "tiny_tds","~> 0.6.2",:x64_mingw] gem "activerecord-sqlserver-adapter",:x64_mingw] else warn("Unknown database adapter `#{adapter}` found in config/database.yml,use Gemfile.local to load your own database gems") end end else warn("No adapter found in config/database.yml,please configure it first") end else warn("Please configure your config/database.yml first") end group :development do gem "rdoc",">= 2.4.2" gem "yard" end group :test do gem "minitest" gem "rails-dom-testing" gem "mocha" gem "simplecov","~> 0.9.1",:require => false # For running UI tests gem "capybara" gem "selenium-webdriver" end local_gemfile = File.join(File.dirname(__FILE__),"Gemfile.local") if File.exists?(local_gemfile) eval_gemfile local_gemfile end # Load plugins' Gemfiles Dir.glob File.expand_path("../plugins/*/{Gemfile,PluginGemfile}",__FILE__) do |file| eval_gemfile file end 什么能解决冲突?是否需要更多信息?我在哪里可以找到有关’令牌的信息? 解决方法
Redmine从Gemfile加载config / database.yml文件,以确定访问配置的数据库所需的正确gem.现在,您的database.yml似乎无效且无法加载.因此,捆绑器无法完成所需的宝石安装.
要解决此问题,请确保您的config / database.yml在语法上是正确的YAML.检查database.yml文件中第10行第13行或附近是否有错误. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |