2014-12-11 2 views
0

xsbt-web-plugin을 사용하여 내 서블릿을 호스팅하고 있습니다. 그것은 container:start을 사용하여 잘 동작합니다.xsbt-web-plugin 웹 서블릿 컨테이너를 sbt 외부에서 실행 하시겠습니까?

데몬과 같이 백그라운드에서 실행하려면 필자가 끊어 지더라도 컴퓨터가 재부팅 되더라도 이상적으로 실행해야합니다. 차라리 sbt를 호출 할 필요가 없습니다.

플러그인이 WAR 파일을 패키지화 할 수 있다는 것을 알고 있지만 바람둥이 등을 실행하고 있지 않습니다. 나는 단지 container:start이하는 일을하고 싶지만보다 견고한 (읽기 : 비 대화식) 방법으로하고 싶다.

(내 목표는 dev의 데모입니다. 사람들이 데모를 사용하는 동안 내 ssh 세션이 sbt 또는 이와 유사한 것을 싫어합니다.하지만 아직 생산할 준비가되지 않았습니다. 서브릿 인프라가 없습니다.)

답변

1

xsbt-web-plugin은 자동 재시작, 오류 복구, 부팅시 실행되는 기능 등 프로덕션 서버로 작동하지 않습니다. 그러나이 유틸리티를 사용하는 것은 이해합니다. 소규모 개발 목적을위한이 방법.

첫 번째 방법

실행 SBT 화면 세션에서, 당신은 (DIS)가 SBT을 중단하지 않고 마음대로 연결할 수 있습니다

당신은 몇 가지 옵션이있다.

두 번째 방법

재정의 컨테이너가 SBT가 정지 된 후 계속 실행되도록 SBT의 종료 후크에 트리거 shutdown 기능.

이 방법은 해당 SBT 구성에 다음 설정을 추가 :

build.sbt :이 완전히 설정에 onLoad을 무시할 것

onLoad in Global := { state => state } 

참고 (가능성이) 너무 다른 중요한 일을하도록 구성된 경우, 그들은 일어나지 않을 것입니다.

이제 SBT에서 container:start를 실행 한 후 SBT를 종료하거나 단순히 컨테이너 JVM을 분기 후 반환 명령 줄에서 sbt container:start을 실행하여하여 하나 컨테이너를 시작할 수 있습니다. 잠시만 기다리면 localhost : 8080으로 요청할 수 있습니다.

관련 문제