• 2010-08-22

    搭建Scala工程

    Tag:Scala Buildr

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://www.blogbus.com/dreamhead-logs/73555884.html

    搭建Scala工程,一个比较简单的做法是选择Buildr。

    Buildr是构建工具,类似于Ant和Maven,它的构建脚本是用Ruby编写的,对于不喜欢XML配置文件的人来说,这是一个福音。就这里而言,我们最需要的是它对Scala的支持。顺便说一下,它也对Groovy提供了内建支持。

    安装Buildr,可以参考
    http://buildr.apache.org/installing.html

    Buildr缺省的构建文件叫做buildfile,下面是一个最简单的支持Scala的buildfile:
    require 'buildr/scala'

    define 'demo'
    (buildfile)

    我们把Scala源程序放到src/main/scala下:
    class Person
    (src/main/scala/Person.scala)

    熟悉Maven的人可能会发现,这个文件布局方式类似于Maven,没错,在Buildr主页上有这样一段描述:
    A drop-in replacement for Maven 2.0, Buildr uses the same file layout, artifact specifications, local and remote repositories.

    接下来,我们就可以进行编译了:
      buildr compile

    如果是第一次编译,buildr会自动去下载项目相关的库,这和Maven的行为是一致的。

    如果要把自己编写程序打成一个JAR包,只要稍微修改一下buildfile
    require 'buildr/scala'

    define 'demo' do
      project.version = '0.0.1'
      package :jar
    end
    (buildfile)

    然后,运行命令:
      buildr package

    缺省情况下,Buildr会尝试使用Scala最新的稳定版本,如今,Scala 2.8已经发布,所以,最新的稳定版本已经成了2.8,但并不是所有库的支持都升级到了2.8。所以,有时候我们需要指定Scala的版本。
    require 'buildr/scala'

    Buildr.settings.build['scala.version'] = "2.7.7"

    define 'demo' do
      project.version = '0.0.1'
      package :jar
    end
    (buildfile)

    使用Buildr,还可以生成IDE的工程文件,当然,请在IDE中安装好对应的插件。比如为了在IntelliJ IDEA中使用我们的工程,只要:
      buildr idea

    要想了解当前buildfile所支持的任务,可以:
      buildr -T
    或者
      buildr help:tasks

    分享到:
    引用地址: