如何在Eclipse中运行SBT?

时间:2014-08-20 18:18:44

标签: eclipse scala intellij-idea eclipse-plugin sbt

到目前为止,我已经为我的Scala项目运行了 IntelliJ IDEA社区版,但由于我的项目正在扩展复杂性,我偶然发现了IDE的越来越多的障碍。

例如,IDEA 的简单事实允许Web开发或Java EE开发,这意味着在Community Edition中使用Play Framework或TomEE会导致什么但死路一条,沮丧。

我首先转向IDEA的唯一原因是因为它具有出色的插件系统,因此可以轻松地将SBT作为主要的scala编译器和库下载工具无缝运行。

在谷歌上搜索,但我似乎只能找到关于sbt的 eclipse插件的提及,这使得sbt项目Eclipse友好,这与我所做的完全相反真的在寻找。

在我到目前为止所经历的所有痛苦之后,我不愿意每年花89欧元获得学生执照......

所以我的问题是;是否有一个Eclipse插件允许我以与IDEA相同的方式使用SBT?或者我被迫通过控制台?

3 个答案:

答案 0 :(得分:1)

将来可能会朝这个方向发展,但目前没有这样的插件。

答案 1 :(得分:1)

目前Eclipse没有Sbt插件。根据您的使用情况,您可以:

  • 使用Eclipse构建器
    • 优点:正确整合(问题和编辑中的错误标记,取消,进度报告)
    • 缺点:可能与Sbt构建文件不同步(例如,在添加依赖项时),不处理除Java和Scala之外的任何内容(如播放模板或路由文件)
  • 在命令行中使用Sbt(确保在Eclipse中禁用自动构建)
    • 优点:可以处理复杂的构建,类路径始终是最新的
    • 缺点:没有整合(见上文)
  • 使用Activator
    • 与Sbt相同的优点和缺点,但有一个漂亮的UI

我们正在为Eclipse创建一个sbt-server插件,它将构建委托给外部Sbt进程,而不会放弃集成的便利性。我们希望在今年年底之前能有所收获。

答案 2 :(得分:0)

我认为你要解决的主要问题是sbt jar依赖项出现并被eclipse项目本地使用。您可以使用IvyIDE插件(在eclipse市场中找到)来实现。

如果你已经安装了(以及sbt的eclipse插件),那么这就缩小了系统之间的差距。

启用:

  1. 从终端输入{sbt deliver-local}命令。这会在项目的目标目录中添加常春藤xml
  2. 右键单击您的项目。选择常春藤 - >启用常春藤依赖管理选项
  3. 进入您的项目属性。突出常春藤属性。单击新按钮并导航到项目目标目录中的ivy xml文件。
  4. 现在你的eclipse会编译你的sbt托管依赖项,现在你正在做你想要的一切,除了在eclipse中实际运行sbt(你现在只需要在更改依赖项时这样做)