1

프로덕션 서버에서 실행하려고하는 랩톱에 Play 응용 프로그램이 있습니다. 로컬에서는 응용 프로그램이 오류없이 컴파일되고 작동합니다. 내 프로덕션 서버에우분투 14.04 프로덕션 서버에 Play Framework 2.3.x (Java 스타일) 배포

, 나는 다음을 수행 : 당신이 볼 수 있듯이

[email protected]:~/mysite# ./activator 
[info] Loading project definition from home/mysite/project 
[info] Set current project to mysite (in build file:/home/mysite/) 
[mysite] $ ~run 

--- (Running the application, auto-reloading is enabled) --- 

[info] play - Listening for HTTP on /0:0:0:0:0:0:0:0:9000 

(Server started, use Ctrl+D to stop and go back to the console...) 

[info] Compiling 4 Scala sources and 2 Java sources to /home/mysite/target/scala-2.11/classes... 
[info] 'compiler-interface' not yet compiled for Scala 2.11.1. Compiling... 
Killed 
[email protected]:~/mysite# 

,`컴파일러 인터페이스는 '아직 컴파일되지 않습니다. 나는 왜 이것이 궁금하다. 스칼라 컴파일러를 설치하지 않았기 때문에 이것이 가능한가?

답변

5

아마도 Killed 부분은 응용 프로그램을 컴파일 할 메모리가 충분하지 않기 때문입니다.

나는 어느 위치에 컴파일하는 것보다 이미 컴파일 된 응용 프로그램을 배포하는 것이 더 좋을 것이라고 생각합니다. ./activator dist을 사용하면됩니다.

이렇게하면 이라는 zip 파일이 생성되고 모든 파일은 이미 컴파일되고 필요한 모든 종속성은 이미 패키지화되어 있습니다. 그런 다음, 프로덕션 서버 어딘가에서이 파일을 업로드를 추출하고 여전히 프로덕션 서버에 구축하려는 경우

$ EXTRACTED_FOLDER/bin/YOUR-APP-NAME 

를 사용하여 서버를 시작, 활성화가

를 사용하여 사용되는 메모리를 줄이기 위해 시도 ~run dev에 모드에서 서버 (스택 추적 등과 같은 즉, 합리적인 정보 오류에 표시 할 수있다)를 시작하고 대신 start 또는 ~start을 사용할 수 있도록 변경에 다시 컴파일 것 는
$ ./activator -mem 200 # MAX 200mb 
// (...) 
[PROJECT-NAME] ~start 

참고.

+0

대단히 감사합니다. 좋은 세부 정보. –

+0

방금 ​​저에게 탈모를 저장, 감사합니다! – egima