2011-04-08 20 views

Respuesta

3

supongo que no quiere al perfil sbt misma manera que lo tienes que utilizar el mecanismo fork y se combinan con el hprof options:

override def fork = forkRun("-agentlib:hprof=heap=sites" :: Nil) 

o

override def fork = Some(new ForkScalaRun { 
    override def runJVMOptions = super.runJVMOptions ++ 
    Seq("-Xmx1999m", "-agentlib:hprof=heap=sites") 
    override def scalaJars = Seq(buildLibraryJar.asFile, buildCompilerJar.asFile) 
}) 

Éstos son algunos de muestras opciones (use -agentlib:hprof=help para obtener más ayuda):

Option Name and Value Description     Default 
--------------------- -----------     ------- 
heap=dump|sites|all heap profiling     all 
cpu=samples|times|old CPU usage      off 
+0

Cool, gracias por detectar esto. Esto es lo que tengo actualmente: 'anular def fork = Some (new ForkScalaRun { anular def ejecutarJVMOptions = super.runJVMOptions ++ Seq (" - Xmx1999m ") anular def scalaJars = Seq (buildLibraryJar.asFile, buildCompilerJar.asFile) }) '¿a dónde iría tu código? – dsg

+2

@dsg - '-agentlib' es una opción de JVM y va donde van las demás opciones de JVM como' -Xmx'. – huynhjl

0

En aras de la exhaustividad: Si está utilizando una tradicional build.sbt, también se puede utilizar

fork in run := true 

javaOptions in run += "-agentlib:hprof=heap=sites"