Class: Jerbil::JavacTask
Description
Compiles Java source files. The location of the source files and the destination directory is specified by a JavaFileList.
Example
desc "compile all java files"
Jerbil::JavacTask.new(:compile) do |t|
t.java_files = JavaFileList.new("src", "classes")
t.options :nowarn, :debug
end
Attributes
| Name | Read/write? | Description | ||
|---|---|---|---|---|
| java_files | RW | A JavaFileList, specifying what to compile and where to write the output to. | ||
| name | RW | |||
| verbose | RW | |||
Public Class methods
new (name, files = nil) {|self if block_given?| ...}
# File lib/jerbil/javac_task.rb, line 30 30: def initialize(name, files = nil) 31: @name = name 32: @verbose = false 33: @java_files = files 34: 35: yield self if block_given? 36: 37: raise "need java_files" if java_files.nil? 38: 39: depends_on java_files.dstdir 40: #CLEAN.include(java_files.dstdir) if CLEAN 41: 42: define 43: end
Protected Instance methods
compile ( parameters, printwriter )
# File lib/jerbil/javac_task.rb, line 95 95: def compile( parameters, printwriter ) 96: javac = Rjb::import('com.sun.tools.javac.Main') 97: javac.compile(parameters, printwriter) 98: end
copy_resources ()
# File lib/jerbil/javac_task.rb, line 100 100: def copy_resources 101: java_files.resource_and_target do |res, target| 102: directory = File.dirname(target) 103: RakeFileUtils.verbose(verbose) do 104: mkdir_p directory unless File.directory?(directory) 105: cp res, target unless uptodate?(target,res) 106: end 107: end 108: end
gather_filenames ()
# File lib/jerbil/javac_task.rb, line 87 87: def gather_filenames 88: java_files.out_of_date 89: end
needs_compiling? ()
# File lib/jerbil/javac_task.rb, line 83 83: def needs_compiling? 84: not java_files.uptodate? 85: end
post_compile ()
# File lib/jerbil/javac_task.rb, line 91 91: def post_compile 92: copy_resources 93: end