如何使用bndtools与Scala一起创建OSGi包?

时间:2015-08-31 18:36:03

标签: scala osgi bndtools

我知道有一些Scala特定的工具来创建OSGi包,但我对bndtools非常满意,我只想写Scala并代替Java。

1 个答案:

答案 0 :(得分:3)

假设在eclipse中安装了bndtools和Scala IDE(你发现它们是Eclipse Marketplace)。

  • 像往常一样创建一个新的Bndtools OSGi项目(例如从File菜单中选择New - > Bndtools OSGi Project
  • 将Scala特性添加到项目中:在Package Explorer视图中右键单击项目,然后在上下文菜单中选择ConfigureAdd Scala Nature。 (见http://scala-ide.org/docs/user/faq.html

对于eclipse方面的所有内容,您现在可以添加Scala类,所有内容的工作方式与使用java相同。

为了确保在命令行和CI服务器上也可以运行,还需要更多步骤。

  • 到文件build.gradle添加行: apply plugin: 'scala'
  • 归档gradle.properties添加:scara.srcDirs=[projectDir/src]

更新:

以上情况还不够,还需要在任何包含scala文件的子模块中添加build.bnd文件。以下内容并不优雅,因为它复制了bnd文件中已有的依赖项,但到目前为止我找到了唯一的解决方案:https://github.com/fusepoolP3/p3-entry-resource/blob/0df0bc35311c8a361f95d8e72f91c5e0df929245/build.gradle