无法使用pdfkit创建pdf - PDFKit :: NoExecutableError

时间:2012-03-07 08:32:21

标签: ruby ruby-on-rails-3 wkhtmltopdf pdfkit

我得到了pdfkit安装,甚至安装了wkhtmltopdf,但每次尝试创建pdf时都会出现以下错误。

PDFKit::NoExecutableError 
No wkhtmltopdf executable found at bundler: command not found: which
Install missing gem executables with `bundle install`
>> Please install wkhtmltopdf - https://github.com/jdpace/PDFKit/wiki/Installing-WKHTMLTOPDF

我的Gemfile有以下内容:

gem 'jquery-rails'
gem 'devise'
gem 'carrierwave'
gem "wkhtmltopdf"
gem 'pdfkit'

我的application.rb有以下条目:

config.middleware.use "PDFKit::Middleware", :print_media_type => true

我在这里遗漏了一些东西 - 我已经运行了一个bundle install但是每次我尝试创建一个pdf时仍会出现这个错误。请帮忙

3 个答案:

答案 0 :(得分:6)

您应该阅读安装自述文件:

  

https://github.com/jdpace/PDFKit

所以你需要安装wkhtmltopdf manualy:

  

https://github.com/jdpace/PDFKit/wiki/Installing-WKHTMLTOPDF

或者像这样

gem install wkhtmltopdf-binary

<强> PS

检查which wkhtmltopdf

并创建新文件config / initializers / pdfkit.rb

PDFKit.configure do |config|
  config.wkhtmltopdf = 'PATH/TO/wkhtmltopdf'
end

答案 1 :(得分:2)

阿里,

我没有看到你提到你所使用的操作系统。 Fl00r和我都假设它是一个Linux系统,所以要相应调整。这就是我需要做的事情,使得PDFKit与wkhtmltopdf在64位Ubuntu 12.04 LTS上运行的Rails应用程序一起工作。

wkhtmltopdf删除对wkhtmltopdf-binaryGemfile的任何引用。

仅向您的Gemfile添加gem 'pdfkit', :require => 'pdfkit'

config/initializers/mime_types.rb文件中添加

Mime::Type.register "application/pdf", :pdf

删除所有config/initializers/pdfkit.rb文件

上运行Rails应用程序的服务器上卸载gem
gem uninstall wkhtmltopdf -a
gem uninstall wkhtmltopdf-binary -a

the project download site here下载到您的服务器wkhtmltopdf-0.10.0_rc2-static-amd64.tar.bz2。最新建议的下载版本中存在一个错误,该错误会阻止用户从生成的PDF中选择和复制文本,但此版本没有该错误。 http://code.google.com/p/wkhtmltopdf/issues/detail?id=886

引用了此问题

从tar存档中提取可执行文件

tar -xvf wkhtmltopdf-0.10.0_rc2-static-amd64.tar.bz2

将其移至/usr/local/bin/目录

sudo mv wkhtmltopdf-0.10.0.rc2 /usr/local/bin/

现在设置一个指向该文件的符号链接,以便以后轻松升级

sudo ln -s /usr/local/bin/wkhtmltopdf-0.10.0.rc2 /usr/local/bin/wkhtmltopdf

设置文件的权限

sudo chmod 755 /usr/local/bin/wkhtmltopdf-0.10.0.rc2

完成所有这些操作并重新启动服务器后,PDFKit现在将使用我在服务器上安装的wkhtmltopdf。

警告:有一次我的Rails应用程序开始报告它在路径中找不到wkhtmltopdf可执行文件,不确定为什么没有改变。重新启动服务器已更正此问题。

答案 2 :(得分:0)

以上都不适合我。我尝试了https://github.com/pdfkit/pdfkit/issues/123

中发布的解决方案