2016-06-15 5 views
2

테스트를 실행하는 동안 사용되는 build.sbt에 javaOptions를 넣었습니다. 이들은 예상대로 작동하고 있습니다.런타임 중에 build.sbt의 javaOptions를 사용하십시오.

javaOptions in Test += "-Dconfig.file=conf/test.conf" 
javaOptions in Test += "-Duser.timezone=UTC" 

런타임 중에도 비슷한 것을 사용하고 싶습니다. 나는 다음을 시도하고 그들은 전혀 작동하지 않습니다

javaOptions in Runtime += "-Duser.timezone=UTC" 
javaOptions in run += "-Duser.timezone=UTC" 

나는 "활성 테스트"와 "활성화 실행"을 사용하여 명령 줄에서 테스트/응용 프로그램을 실행하고 있습니다. javaOptions가 작동하지 않기 때문에 다른 옵션은 명령 줄에서 "activator run -Duser.timezone = UTC"과 같이 전달하는 것입니다. 명령 줄 인수를 전달하지 않는 것이 좋습니다.

+0

당신이 + = "-Duser.timezone = UTC"''javaOptions 같은 것을 언급하지 않고 시도해 봤어 : 자세한 내용은 SBT 설명서에 포크 (fork)에

fork in run := true 

장 참조? –

답변

1

javaOptions은 분기 된 JVM에만 적용됩니다.

> help javaOptions 
Options passed to a new JVM when forking. 

테스트에서 작동하는 이유는 기본적으로 Playframework가 분기 된 JVM에서 테스트를 병렬로 실행하기 때문입니다.

> show test:fork 
[info] true 

실행 작업을 위해이 작업을 수행하려면 잘린 JVM도 사용할 수 있습니다. 추가 build.sbt 파일에 다음 : http://www.scala-sbt.org/0.13/docs/Forking.html

관련 문제