Z xsbt, można uruchomić test w forked JVM (z powodu jednej z przyczyn wymienionych w „Running Project Code”
Jeśli używasz rozdwojony JVM.
określić konfigurację do wpływa jedynie główne lub uruchomić testy zadania:
scala javaOptions in (Test,run) += "-Xmx8G"
powinny być w stanie określić ny inne opcje do tego JVM przez javaOptions
.
W OP David Eagen doniesienia, że następująca konfiguracja nie zadziała za pierwszym razem, nie z powodu opcji SBT, ale ze względu na ścieżce:
lazy val escacheServer =
Project("escache-server",
file("server"),
settings = buildSettings ++ Seq(resolvers ++=
Seq(scala_tools_snapshots, typesafe_repo),
libraryDependencies ++= escacheServerDeps,
javaOptions in run += "-Djava.security.policy=jini.policy",
fork in run := true
)
).dependsOn(escache) }
Wygląda na to, że mój problem jini.policy
nie został znaleziony w bieżącym katalogu.
Ustawiam pełną ścieżkę i teraz działa.
Gdzie ustawić javaOptions? Po dodaniu go do ustawień projektu w ten sposób nie wydaje się, aby cokolwiek zrobić: lazy val escacheServer = Projekt ("serwer escache", plik ("serwer"), \t \t \t ustawienia = buildSettings ++ \t \t \t \t Seq (przeliczniki ++ = (SEQ scala_tools_snapshots, typesafe_repo) \t \t \t \t libraryDependencies ++ = escacheServerDeps, \t \t \t \t javaOptions w perspektywie + = „-Djava.security.policy = jini.policy ", \t \t \t \t widelec w biegu: = true \t \t \t \t)) .dependsOn (escache) } –
Wygląda opcje JVM faktycznie dostać ustawić kiedy używać które w moim projekcie. Przetestowałem to ustawiając maksymalną stertę na 24G, której system, którego używam, nie może obsłużyć. Z pewnością SBT zgłosiło awarię: [błąd] Nieprawidłowy maksymalny rozmiar sterty: -Xmx = 24G -Djava.security.policy = jini.policy Wygląda na to, że moim problemem było to, że jini.policy nie zostało znalezione w bieżącym katalogu. Ustawiam pełną ścieżkę i teraz działa ... Dzięki VonC. –
@David: doskonałe, zawarłem twój config i wnioski w odpowiedzi dla większej widoczności. – VonC