You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by dj...@apache.org on 2009/06/23 02:01:12 UTC
svn commit: r787456 - /buildr/trunk/lib/buildr/scala.rb
Author: djspiewak
Date: Tue Jun 23 00:01:11 2009
New Revision: 787456
URL: http://svn.apache.org/viewvc?rev=787456&view=rev
Log:
Added prototype implementation of scala:shell task
Modified:
buildr/trunk/lib/buildr/scala.rb
Modified: buildr/trunk/lib/buildr/scala.rb
URL: http://svn.apache.org/viewvc/buildr/trunk/lib/buildr/scala.rb?rev=787456&r1=787455&r2=787456&view=diff
==============================================================================
--- buildr/trunk/lib/buildr/scala.rb (original)
+++ buildr/trunk/lib/buildr/scala.rb Tue Jun 23 00:01:11 2009
@@ -22,3 +22,30 @@
require 'buildr/scala/bdd'
Object::Scala = Buildr::Scala
+
+module Buildr
+ module ScalaProject
+ include Extension
+
+ after_define do |project|
+ project.task 'scala:shell' => :compile do
+ Scalac = Buildr::Scala::Scalac
+
+ Scalac.scala_home or fail 'Are we forgetting something? SCALA_HOME not set.'
+
+ cp = (project.compile.dependencies + Scalac.dependencies).join(File::PATH_SEPARATOR) +
+ project.path_to(:target, :classes)
+
+ cmd_args = " -Denv.classpath='#{cp}'"
+ cmd_args += ' -classpath'
+ cmd_args += " '#{cp}'"
+
+ system(File.expand_path('bin/scala', Scalac.scala_home) + cmd_args)
+ end
+ end
+ end
+
+ class Project
+ include ScalaProject
+ end
+end