我已将此pdftk
构建包添加到我在Heroku上的免费应用程序中:https://github.com/fxtentacle/heroku-pdftk-buildpack.git。
我无法将应用程序部署到Heroku:
Preparing runtime environment...
-----> Checking for additional extensions to install...
-----> heroku-pdftk-buildpack app detected
cp: cannot stat 'binaries-heroku-18/*': No such file or directory
! Push rejected, failed to compile heroku-pdftk-buildpack app.
! Push failed
此外,我添加了heroku/php
并将此buildpack的索引设置为1。当我转到应用程序的临时URL时,Laravel运行,但是由于某些原因,pdftk
似乎没有跑。有人遇到过同样的问题吗?
答案 0 :(得分:0)
该heroku-18
堆栈的buildpack尚未更新。它的compile
脚本试图将binaries-$STACK/
的{{3}}转换为/app/bin/
,但是只包含cedar-14
和heroku-16
的二进制目录。
您可以copy precompiled binaries,即roll your app back to heroku-16
,但是当然这也会更改其他软件包版本:
heroku apps:stacks:set heroku-16 --app myapp
这与从Ubuntu 18.04升级到Ubuntu 16.04非常相似,但这可能是您最简单的解决方案。
或者,您可以派生发现的pdftk
buildpack并为Ubuntu 18.04更新它,但这不太容易。
pdftk
已从Ubuntu的官方存储库supported until April, 2021中删除。您尝试使用的buildpack在其各自的二进制目录中包括libgcj
和cedar-14
的{{1}}。如果要更新buildpack,则还必须包括该内容。
此外,我添加了
heroku-16
并将此buildpack的索引设置为1。当我转到应用程序的临时URL时,Laravel运行,但是由于某些原因,heroku/php
似乎没有跑。有人遇到过同样的问题吗?
您看到的错误正在阻止您的应用程序被部署。您没有看到带有pdftk
的应用程序的新版本,但是上一次成功部署的版本。您必须先解决构建问题,然后才能使用pdftk
。
答案 1 :(得分:0)
一旦此PR合并:https://github.com/fxtentacle/heroku-pdftk-buildpack/pull/9,则buildpack应与heroku-18堆栈一起使用。
也许对回购所有者发表评论,要求他们合并?
目前,您可以使用可用于heroku-18堆栈的分叉和更新版本:https://github.com/Aesthetikx/heroku-pdftk-buildpack。
如果您使用的是app.json
文件,则将pdftk buildpack指向派生版本:
"buildpacks": [
...,
{
"url": "https://github.com/fxtentacle/heroku-pdftk-buildpack.git"
}
]
答案 2 :(得分:0)
我关注了这篇文章(http://derekbarber.ca/blog/2014/11/20/using-pdftk-with-rails-on-heroku/),尽管在Rails应用程序上也使PDFTK在Heroku-18上工作。
下面摘录的代码是HT @ derek-barber。
mkdir -p [my_project]/vendor/pdftk/lib [my_project]vendor/pdftk/bin
cd /tmp
git clone https://github.com/millie/pdftk-source.git
cd pdftk-source
tar xzvf pdftk.tar.gz
mv bin/pdftk [my_project]/vendor/pdftk/bin/
mv lib/libgcj.so.12 [my_project]/vendor/pdftk/lib/
cd [my_project]
git add -f vendor/pdftk/
git commit -m "Add pdftk dependencies"
git push heroku master
heroku config:set LD_LIBRARY_PATH=/app/.heroku/vendor/lib:/app/vendor/pdftk/lib
heroku config:set PATH=/app/.heroku/python/bin:/usr/local/bin:/usr/bin:/bin:/app/vendor/p