class Maven::Tools::DSL::JRubyDSL

Public Class Methods

create( parent, scope, *args, &block ) click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 37
def self.create( parent, scope, *args, &block )
  args, options = args_and_options( *args )
  j = JRubyDSL.new( parent, scope, &block )
  j.version args[0]
  j.no_asm args[1]
  fill_options( j, options || {} )
  j.apply
  j
end
new( parent, scope, &block ) click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 47
def initialize( parent, scope, &block )
  @parent = parent 
  @data = {}
  self.scope scope
  self.instance_eval( &block ) if block
end

Public Instance Methods

apply() click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 65
def apply
  if version.nil?
    # nothing to do
  elsif( version < '1.6' )
    raise 'jruby before 1.6 are not supported'
  elsif ( version < '1.7' )
    warn 'jruby version below 1.7 uses jruby-complete'
    dependency :jar, 'jruby-complete'
  elsif ( version.sub( /1\.7\./, '').to_i < 5 )
    dependency :jar, 'jruby-core'
  elsif no_asm
    dependency :pom, 'jruby-noasm'
  else
    dependency :pom, 'jruby-noasm'
  end
end
help() click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 88
        def help
          warn self.class.help( 'jruby', :scope, :version, :no_asm => true, :jar => nil ) + <<EOS
argument: jruby 'version'
arguments: jruby 'version', true
EOS
        end
jar( *args, &block ) click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 95
def jar( *args, &block )
  DependencyDSL.create( @parent, :jar, scope, *args, &block )
end
legacy_version() click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 82
def legacy_version
  v = version
  v+= '-no_asm' if no_asm
  v
end

Private Instance Methods

dependency( type, artifact_id ) click to toggle source
# File lib/maven/tools/dsl/jruby_dsl.rb, line 54
def dependency( type, artifact_id )
  dep = Dependency.new
  dep.type = type
  dep.group_id = 'org.jruby'
  dep.artifact_id = artifact_id
  dep.version = version
  dep.scope = scope
  @parent.dependencies << dep
end