问题
I have a problem with the pdf-writer gem on a collaborative project I'm trying to run, I'm using RVM
, Ruby 1.9.2p180
, Rails 3.1.0
on Ubuntu 10.10
.
I created a new gemset
to install the required gems with Bundler, but when I try to run the app I get the fallowing error;
josethernandezc@DG965WH:~/Desktop/conest31$ rails s
/home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require': /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/pdf-writer-1.1.8/lib/pdf/writer.rb:712: invalid multibyte char (US-ASCII) (SyntaxError)
/home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/pdf-writer-1.1.8/lib/pdf/writer.rb:712: invalid multibyte char (US-ASCII)
/home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/pdf-writer-1.1.8/lib/pdf/writer.rb:712: syntax error, unexpected $end, expecting keyword_end
content = "%PDF-#{@version}\n%âãÏÓ\n"
^
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `block in load_dependency'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640:in `new_constants_in'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
from /home/josethernandezc/Desktop/conest31/config/application.rb:58:in `<top (required)>'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/railties-3.1.0/lib/rails/commands.rb:52:in `require'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/railties-3.1.0/lib/rails/commands.rb:52:in `block in <top (required)>'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/railties-3.1.0/lib/rails/commands.rb:49:in `tap'
from /home/josethernandezc/.rvm/gems/ruby-1.9.2-p180@conest31/gems/railties-3.1.0/lib/rails/commands.rb:49:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
The problem is in the pdf-writer-1.1.8/lib/pdf/writer.rb:712
, especifically; content = "%PDF-#{@version}\n%âãÏÓ\n"
Any suggestions would be great, I tried to Google the error but I have not found anything specific to pdf-writer....
回答1:
pdf-writer
is not compatible with Ruby 1.9. There is a fork which is: https://github.com/metaskills/pdf-writer
Change the pdf-writer
line in your Gemfile for:
gem 'pdf-writer', :git => 'git://github.com/metaskills/pdf-writer.git'
回答2:
I just ported pdf-writer to Ruby 2.0. Pull request sent to metaskills (referenced in previous answer).
If you need it for Ruby 2.0 in the meantime, please find the forked code here:
gem 'pdf-writer', :git => 'git://github.com/mwlang/pdf-writer.git'
回答3:
The fork of pdf-writer also works on Ruby 2.1, thanks.
gem 'pdf-writer', :git => 'git://github.com/mwlang/pdf-writer.git'
来源:https://stackoverflow.com/questions/9035666/pdf-writer-invalid-multibyte-char-us-ascii-expecting-keyword-end-content-p