2014-12-03 3 views
1

My Rails 앱은 로직에 대해 레거시 Java 코드를 사용합니다. 쉘 명령을 통해 코드를 실행합니다 : javac whatever 다음에 java whatever. 그러나 Heroku에 배포 한 후 javac 또는 java을 찾을 수 없기 때문에 요청이 실패합니다.Rails Heroku 앱에 Java를 설치하려고합니다.

Rails 앱에 Java를 설치하는 가장 좋은 방법은 무엇입니까? 돈을 내가 루비 buildpack을 분기 거기에서 직접 자바를 설치하려고

=====> Downloading Buildpack: https://github.com/heroku/heroku-buildpack-java.git 

!  Push rejected, failed to compile Multipack app 

하지만, I :

https://github.com/heroku/heroku-buildpack-ruby.git 
https://github.com/heroku/heroku-buildpack-java.git 

을하지만이 오류 :이 .buildpacks와 나는, 멀티 buildpack 솔루션을 사용하여 시도 내가하는 일을 정말로 알지 못해. 어떤 아이디어?

답변

0

자바 빌드 팩 대신 heroku-buildpack-jvm-common을 사용해보세요. 그래서 .buildpacks 파일은 다음과 같습니다

https://github.com/heroku/heroku-buildpack-jvm-common.git 
https://github.com/heroku/heroku-buildpack-ruby.git 

아마 시간을 구축/javac 또는 java 컴파일에 필요한 경우에 루비 일 전에 JVM을 배치하는 것도 좋은 방법입니다.

JVM 빌드 팩은 기본적으로 Java 빌드 팩과 동일하지만 Maven을 설치하지 않으므로 pom.xml 파일이 필요하지 않습니다. 누락 된 pom.xml은 내가 생각하기에 그 오류가있는 이유입니다.

현대 시대에서 편집

, 당신은 또한 실행할 수 있습니다

$ heroku buildpacks:add heroku/jvm 
$ heroku buildpacks:add heroku/ruby 
+0

내가 실제로 Heroku가 사람을 물어 (그리고 그들은 내가 약 놀랐다있는, 거의 즉시 응답) - 밝혀 Java * first *를 넣으면 작동합니다. 이유는 모르겠군요. 이것은 좋은 생각이지만 (그리고 그것이 작동 확인). 감사! – Cidolfas

+0

Ruby의 컴파일/빌드 단계에서 Java가 필요한 경우에만 순서가 중요합니다. 이 경우 Java 부분이 실패했기 때문에'pom.xml '이 부족한 것 같습니다. – codefinger

+0

꽤 가능합니다. 8-) 나는 Heroku 사람들이 자바가 제일 먼저 나올 필요가 있다고 말했다. – Cidolfas