My Rails应用程序依赖于遗留Java代码来实现其逻辑。它通过shell命令运行代码:javac whatever
然后java whatever
。但是,在部署到Heroku后,请求失败,因为找不到javac
或java
。
在Rails应用程序中安装Java的最佳方法是什么?我尝试使用multi-buildpack解决方案,使用此.buildpacks:
https://github.com/heroku/heroku-buildpack-ruby.git
https://github.com/heroku/heroku-buildpack-java.git
但是我收到了这个错误:
=====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-java.git
! Push rejected, failed to compile Multipack app
我尝试使用Ruby buildpack并直接从那里安装Java,但我真的不知道我在做什么。有什么想法吗?
答案 0 :(得分:1)
尝试使用heroku-buildpack-jvm-common
而不是Java buildpack。因此,您的.buildpacks
文件将如下所示:
https://github.com/heroku/heroku-buildpack-jvm-common.git
https://github.com/heroku/heroku-buildpack-ruby.git
将JVM置于Ruby之前可能是个好主意,以防在编译/构建时需要javac
或java
。
JVM buildpack与Java buildpack基本相同,但不安装Maven,因此不需要pom.xml
文件。丢失的pom.xml
是我认为你得到错误的原因。
修改强>
在现代,您还可以运行:
$ heroku buildpacks:add heroku/jvm
$ heroku buildpacks:add heroku/ruby