Как передать параметры JVM в SBT для использования при запуске приложения или тестовых случаев? - PullRequest
21 голосов
/ 19 августа 2011

Я хотел бы указать параметры JVM при запуске моего приложения или тестов для приложения через SBT. В частности, мне нужно иметь возможность дать JVM параметр -Djava.security.policy, чтобы моя политика загружалась и использовалась для теста.

Как я могу сделать это с SBT?

1 Ответ

11 голосов
/ 19 августа 2011

С xsbt вы можете запустить тест в разветвленной JVM (по одной из причин, указанных в « Выполнение кода проекта ».

Если вы используете разветвленный jvm:

укажите конфигурацию, которая будет влиять только на задачи основного или тестового запуска:

scala javaOptions in (Test,run) += "-Xmx8G" 

Вы должнычтобы указать любые другие опции для этой JVM через javaOptions.


OP David Eagen сообщает, что следующая конфигурация сначала не работала, не из-за параметров sbt, но из-за пути:

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) }

Похоже, моя проблема была в том, что jini.policy не было найдено в текущем каталоге.
Я установил полный путь, и теперь он запускается.

...