Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
 package org.jruby.ant;
 
 import java.util.List;
 import  org.apache.tools.ant.BuildException;
 import  org.apache.tools.ant.Task;
 
public class RakeTaskBase extends Task {
    private Object rakeWrapper;
    private ScriptingContainer container;
    protected String filename;
    public RakeTaskBase() {
        acquireRakeReference();
    }
    public void setFile(String filename) {
        this. = filename;
    }
    @Override
    public void execute() throws BuildException {
        .put("$project"getProject());             // set project so jruby ant lib gets it
    }
    protected void acquireRakeReference() {
        ClassLoader prevClassLoader = Thread.currentThread().getContextClassLoader();
        try {
            Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
            System.setProperty("jruby.native.enabled""false"); // Problem with cl w/ jnr + jffi
             = new ScriptingContainer();
            // FIXME: This needs to be replaced by something which does not assume CWD
            .setLoadPaths(Arrays.asList("lib"));
            .runScriptlet("require 'ant/tasks/raketasks'");
             = .runScriptlet("RakeWrapper.new");
        } finally {
            Thread.currentThread().setContextClassLoader(prevClassLoader);
        }
    }
    protected List handleFilenameArgument() {
        List args = new ArrayList();
        if ( != null) {
            args.add("-f");
            args.add();
        }
        return args;
    }
    public void rakeMethod(String methodObject... argsthrows BuildException {
        try {
            .callMethod(methodargs);
        } catch(Exception e) {
            throw new BuildException("Build failed: " + e.getMessage(), e);
        }
    }
New to GrepCode? Check out our FAQ X