2012-01-08 11 views
5

He creado un proyecto de elevación para IDEA 11 Community Edition utilizando un plugin de sbt-idea. Se compila y ejecuta bien desde la consola SBT SBT plugins, `m también es capaz de depurar a través de la creación de la configuración correcta "a distancia".¿Cómo crear una configuración de ejecución SBT en IntelliJ IDEA 11 Community Edition?

Pero, ¿cómo creo una configuración de ejecución SBT?

No deseo escribir cada vez "contenedor: inicio" en la consola SBT, quiero iniciar usando un botón Ejecutar/Depurar.
No pude encontrar algún tipo de configuración SBT (como que hay disponible un tipo "Maven"), y cuando intento agregar configuración basada en "Tipo de aplicación" no puedo especificar la clase principal.

Existe también ningún tipo "Scala Compilación Server" disponible (no puedo verlo en la lista de tipos de configuración disponibles), así que no puedo usar soluciones como esta https://stackoverflow.com/a/6131737/705819/
¿Hay acciones específicas que se deben hacer para el tipo de "Servidor de compilación Scala" para mostrar? ¿O solo está disponible en la edición completa de IDEA?

ACTUALIZACIÓN: También estoy usando JRebel para mi proyecto. Sin una configuración de ejecución adecuada, tengo que ejecutar SBT con JRebel a través de parámetros VM y depurar mediante configuración remota, así que reinicio el depurador cada vez que actualizo el código (porque Jrebel recarga la clase) en lugar de simplemente hacer clic en el botón "Depurar con Jrebel" (gracias al plugin IDEA de Jrebel). Es muy molesto, por favor ayuda!

+1

Agrega 'alias cs = container: start' a' .sbtrc' para evitar unas pocas teclas. – retronym

Respuesta

1

¿Qué cantidad de contenedor de servlet necesita? Yo recomendaría escribir un método principal normal que inicie un Jetty incrustado.

Agregar a su configuración de generación de añadir embarcadero a la ruta de clase de prueba:

libraryDependencies += "org.mortbay.jetty" % "jetty" % "6.1.22" % "test" 

A continuación, echar un code snippet from here para comenzar embarcadero:

Puede configurar un pre-run action para esta configuración Ejecutar para ejecutar sbt package , que creará una GUERRA.

+0

¡Muchas gracias! Escribí un método principal para el embarcadero 8 (la API ha cambiado ligeramente http://wiki.eclipse.org/Jetty/Tutorial/Embedding_Jetty) ¡y funcionó! Lo último: sigo usando una consola SBT en paralelo con la depuración (ejecuto el comando "~ compile"), porque JRebel requiere una compilación continua de las fuentes para su correcto funcionamiento. Tenía la esperanza de poder asignar una acción antes de lanzar SBT "~ compilar", pero no existe tal opción. Tal vez puede sugerir una solución para ello? – Alexzander

+1

Tengo el mismo problema, esta solución no funcionó para mí, porque no escribo una aplicación web en absoluto. – Arne

Cuestiones relacionadas