eclipse scala sbt sbteclipse

Cómo hacer que Eclipse reconozca las dependencias de SBT



scala sbteclipse (6)

En el símbolo del sistema, vaya a la carpeta del proyecto y escriba

sbt eclipse

Esto debería generar las entradas apropiadas .classpath en el proyecto eclipse.

Vuelva a eclipse, seleccione el proyecto y presione f5 , esto recargará las librerías referenciadas.

Estoy tratando de averiguar cómo hacer que Eclipse reconozca las dependencias que se recuperan usando SBT. SBT descarga las dependencias correctas y las coloca en mi directorio ~ / .ivy pero eclipse no las ve. ¿Hay alguna forma de hacer esto?

Gracias


Lo siguiente funciona para mí:

1) cerrar proyecto en Eclipse

2) en mi explorador de archivos, navegue a mi proyecto Eclipse, asegúrese de que los archivos ocultos estén visibles

3) abrir .classpath en un editor de texto simple

4) copiar la entrada inferior. Por ejemplo, en mi proyecto actual, es <classpathentry path="/home/natalie/.ivy2/cache/org.scalatest/scalatest_2.9.1/jars/scalatest_2.9.1-1.8.jar" kind="lib"></classpathentry>

5) navegue a mi carpeta .ivy, caché, luego a la biblioteca que he agregado vía sbt

6) haga clic derecho en el archivo jar, seleccione propiedades, copie la ruta y el nombre del archivo jar y reemplácelo en la entrada que copié en el paso 4

7) guardar .classpath

8) abrir mi proyecto en Eclipse

Nueva dependencia ahora está disponible en Eclipse.


Probablemente esta no sea la respuesta que está buscando y admito que no es elegante, pero actualmente me funciona, lo que significa que creo que me lleva menos tiempo hacer lo siguiente periódicamente en lugar de investigar y encontrar una solución más elegante.

Supongo que está utilizando el complemento sbt-eclipse ( https://github.com/typesafehub/sbteclipse ). Cuando agrego nuevas dependencias a mi proyecto (que en realidad es bastante raro) simplemente regenero mis archivos de proyecto eclipse del complemento. La desventaja de esto es que tengo un proyecto de módulo múltiple y, después de actualizar los proyectos en eclipse, necesito volver a agregar las dependencias entre proyectos en el editor de ruta de compilación de eclipse.

Como mencioné, es bastante raro, pero en general, no pierdo tanto tiempo haciéndolo. No es bonito, pero funciona.

La mejor de las suertes, Andy


Si está utilizando el plugin sbteclipse, se puede lograr de una manera simple. En el tipo de sbt:

recargar
eclipse con-fuente = verdadero

Luego, en eclipse, presiona F5 en una carpeta de proyecto para actualizarlo. O haga clic derecho y elija "Actualizar". Solo funciona.


Todo lo que necesita es ejecutar desde su casa de proyecto:

sbt "eclipse with-source=true"

o ingrese la consola sbt y escriba:

eclipse with-source=true

Por cierto: no sé si a partir de enero de 12 algo ha cambiado, pero ahora parece mucho más simple.


Utilizo el plugin Apache IvyDE para Eclipse, y he tenido más suerte con este enfoque. Solo se describe en los viejos documentos sbt , pero funciona con sbt 0.11

Primero, instale el complemento IvyDE en Eclipse y reinicie.

Ejecute el comando sbt deliver-local : esto creará un archivo XML Ivy de sus dependencias.

En Eclipse, en su Proyecto / Propiedades - Ruta de compilación Java - Bibliotecas, haga clic en "Agregar biblioteca" y seleccione "Dependencias gestionadas IvyDE", luego seleccione el archivo target / scala-2.9.1 / ivy- projectversion .xml

Cuando agrega una nueva dependencia a build.sbt, ejecute nuevamente los comandos sbt reload y deliver-local . A continuación, haga clic con el botón derecho en la biblioteca Ivy para su proyecto en el Explorador de paquetes: se denominará "target / scala-2.9.1 / ivy- versionversion .xml [compile, test]" y haga clic en el segundo elemento de menú "Refresh" ( entre "Actualizar" y "Volver a cargar configuraciones" - no "Actualizar F5").