Package org.apache.tools.ant.taskdefs

Examples of org.apache.tools.ant.taskdefs.Java


   * @throws Exception
   */
  protected void generateSchemas(File baseDir) throws Exception
  {
    log("Generating Schemas to: " + baseDir.getCanonicalPath() + "/" + outputDir);
    Java javatask = (Java) getProject().createTask("java");
    javatask.setClassname(SchemaGenerator.class.getName());
    javatask.setFork(true);

    javatask.createJvmarg().setValue("-Dfile.encoding="+this.inputCharset );
   
    for (Argument arg : jvmArgs)
    {
      if(arg != null)
      {
        javatask.createJvmarg().setValue(arg.getParts()[0]);
      }
    }
    javatask.createArg().setValue(baseDir.getCanonicalPath());
    javatask.createArg().setValue(outputDir.getCanonicalPath());
    addCompilerParameters(javatask);

    for (Path path : this.classpath)
    {
      javatask.setClasspath(path);
    }

    int resultCode = javatask.executeJava();
    if (resultCode != 0)
    {
      log("Error generating schemas.", 1);
    }
  }
View Full Code Here


         // Create an instance of the compiler, redirecting output to
         // the project log
         if (classpath == null)
            throw new BuildException("No classpath");
         classpath.append(compilerClasspath);
         Java java = (Java) (getProject().createTask("java"));
         if (getClasspath() != null)
         {
            getProject().log("using user supplied classpath: " + getClasspath(), Project.MSG_DEBUG);
            java.setClasspath(getClasspath().concatSystemClasspath("ignore"));
         }
         else
         {
            Path classpath = new Path(getProject());
            classpath = classpath.concatSystemClasspath("only");
            getProject().log("using system classpath: " + classpath, Project.MSG_DEBUG);
            java.setClasspath(classpath);
         }

         java.setDir(getProject().getBaseDir());
         java.setClassname("org.jboss.ant.tasks.retrocheck.Checker");
         //this is really irritating; we need a way to set stuff
         String args[] = cmd.getJavaCommand().getArguments();
         for (int i = 0; i < args.length; i++)
         {
            java.createArg().setValue(args[i]);
         }
         java.setFailonerror(getFailonerror());
         //we are forking here to be sure that if JspC calls
         //System.exit() it doesn't halt the build
         java.setFork(true);
         java.setTaskName("retrocheck");
         if (maxmemory != null)
         {
            java.setMaxmemory(maxmemory);
         }
         java.execute();
      }
      catch (Exception ex)
      {
         if (ex instanceof BuildException)
         {
View Full Code Here

    /**
     * Create the FindBugs engine (the Java process that will run whatever
     * FindBugs-related program this task is going to execute).
     */
    protected void createFindbugsEngine() {
        findbugsEngine = new Java();
        findbugsEngine.setProject(getProject());
        findbugsEngine.setTaskName(getTaskName());
        findbugsEngine.setFork(true);
        if (jvm.length() > 0) {
            findbugsEngine.setJvm(jvm);
View Full Code Here

         // Create an instance of the compiler, redirecting output to
         // the project log
         if (classpath == null)
            throw new BuildException("No classpath");
         classpath.append(compilerClasspath);
         Java java = (Java) (getProject().createTask("java"));
         if (getClasspath() != null)
         {
            getProject().log("using user supplied classpath: " + getClasspath(), Project.MSG_DEBUG);
            java.setClasspath(getClasspath().concatSystemClasspath("ignore"));
         }
         else
         {
            Path classpath = new Path(getProject());
            classpath = classpath.concatSystemClasspath("only");
            getProject().log("using system classpath: " + classpath, Project.MSG_DEBUG);
            java.setClasspath(classpath);
         }

         java.setDir(getProject().getBaseDir());
         java.setClassname("org.jboss.weaver.Main");

         // Pass in any jvmargs
         String[] jvmargs = cmd.getVmCommand().getArguments();
         for (int i = 0; i < jvmargs.length; i++)
         {
            java.createJvmarg().setValue(jvmargs[i]);
         }

         //this is really irritating; we need a way to set stuff
         String args[] = cmd.getJavaCommand().getArguments();
         for (int i = 0; i < args.length; i++)
         {
            java.createArg().setValue(args[i]);
         }
         java.setFailonerror(getFailonerror());

         // Fork is required to set a new classpath
         java.setFork(true);
         java.setTaskName("retro");
         if (maxmemory != null)
         {
            java.setMaxmemory(maxmemory);
         }
        
         java.execute();
      }
      catch (Exception ex)
      {
         if (ex instanceof BuildException)
         {
View Full Code Here

                instrumentDir.getAbsolutePath()));
            iContractClasspath.append(new Path(getProject(),
                buildDir.getAbsolutePath()));

            // Create a forked java process
            Java iContract = (Java) getProject().createTask("java");

            iContract.setTaskName(getTaskName());
            iContract.setFork(true);
            iContract.setClassname("com.reliablesystems.iContract.Tool");
            iContract.setClasspath(iContractClasspath);

            // Build the arguments to iContract
            StringBuffer args = new StringBuffer();

            args.append(directiveString());
            args.append("-v").append(verbosity).append(" ");

            args.append("-b").append("\"").append(icCompiler);
            args.append(" -classpath ").append(beforeInstrumentationClasspath);
            args.append("\" ");

            args.append("-c").append("\"").append(icCompiler);
            args.append(" -classpath ").append(afterInstrumentationClasspath);
            args.append(" -d ").append(buildDir).append("\" ");

            args.append("-n").append("\"").append(icCompiler);
            args.append(" -classpath ").append(repositoryClasspath);
            args.append("\" ");

            args.append("-d").append(failThrowable).append(" ");

            args.append("-o").append(instrumentDir).append(File.separator);
            args.append("@p").append(File.separator).append("@f.@e ");

            args.append("-k").append(repositoryDir).append(File.separator);
            args.append("@p ");

            args.append(quiet ? "-q " : "");
            // reinstrument everything if controlFile exists and is newer
            // than any class
            args.append(instrumentall ? "-a " : "");
            args.append("@").append(targets.getAbsolutePath());
            iContract.createArg().setLine(args.toString());

            //System.out.println( "JAVA -classpath " + iContractClasspath
            //    + " com.reliablesystems.iContract.Tool " + args.toString() );

            // update iControlProperties if it's set.
            if (updateIcontrol) {
                Properties iControlProps = new Properties();

                try {
                    // to read existing propertiesfile
                    iControlProps.load(new FileInputStream("icontrol.properties"));
                } catch (IOException e) {
                    log("File icontrol.properties not found. That's ok. "
                        + "Writing a default one.");
                }
                iControlProps.setProperty("sourceRoot",
                    srcDir.getAbsolutePath());
                iControlProps.setProperty("classRoot",
                    classDir.getAbsolutePath());
                iControlProps.setProperty("classpath",
                    afterInstrumentationClasspath.toString());
                iControlProps.setProperty("controlFile",
                    controlFile.getAbsolutePath());
                iControlProps.setProperty("targetsFile",
                    targets.getAbsolutePath());

                try {
                    // to read existing propertiesfile
                    iControlProps.store(new FileOutputStream("icontrol.properties"),
                        ICONTROL_PROPERTIES_HEADER);
                    log("Updated icontrol.properties");
                } catch (IOException e) {
                    log("Couldn't write icontrol.properties.");
                }
            }

            // do it!
            int result = iContract.executeJava();

            if (result != 0) {
                if (iContractMissing) {
                    log("iContract can't be found on your classpath. "
                        + "Your classpath is:");
View Full Code Here

        if (serverURL == null) {
            throw new BuildException("The url of the weblogic server must be provided.");
        }

        Java weblogicAdmin = (Java) getProject().createTask("java");
        weblogicAdmin.setFork(true);
        weblogicAdmin.setClassname("weblogic.Admin");
        String args;

        if (beaHome == null) {
            args = serverURL + " SHUTDOWN " + username + " " + password + " " + delay;
        } else {
            args = " -url " + serverURL
                    + " -username " + username
                    + " -password " + password
                    + " SHUTDOWN " + " " + delay;
        }

        weblogicAdmin.createArg().setLine(args);
        weblogicAdmin.setClasspath(classpath);
        weblogicAdmin.execute();
    }
View Full Code Here

                    + " not found in weblogic home " + weblogicSystemHome
                    + " or as absolute file");
            }
        }

        Java weblogicServer = (Java) getProject().createTask("java");
        weblogicServer.setTaskName(getTaskName());
        weblogicServer.setFork(true);
        weblogicServer.setClassname(weblogicMainClass);

        String jvmArgs = additionalJvmArgs;

        if (weblogicClasspath != null) {
            jvmArgs += " -Dweblogic.class.path=" + weblogicClasspath;
        }

        jvmArgs += " -Djava.security.manager -Djava.security.policy==" + securityPolicyFile;
        jvmArgs += " -Dweblogic.system.home=" + weblogicSystemHome;
        jvmArgs += " -Dweblogic.system.name=" + weblogicSystemName;
        jvmArgs += " -Dweblogic.system.propertiesFile=" + weblogicPropertiesFile;

        weblogicServer.createJvmarg().setLine(jvmArgs);
        weblogicServer.createArg().setLine(additionalArgs);

        if (classpath != null) {
            weblogicServer.setClasspath(classpath);
        }
        if (weblogicServer.executeJava() != 0) {
            throw new BuildException("Execution of weblogic server failed");
        }
    }
View Full Code Here

        // get all the files in the descriptor directory
        DirectoryScanner ds = super.getDirectoryScanner(descriptorDirectory);

        String[] files = ds.getIncludedFiles();

        Java helperTask = (Java) getProject().createTask("java");
        helperTask.setTaskName(getTaskName());
        helperTask.setFork(true);
        helperTask.setClassname("org.apache.tools.ant.taskdefs.optional.ejb.EjbcHelper");
        String args = "";
        args += " " + descriptorDirectory;
        args += " " + generatedFilesDirectory;
        args += " " + sourceDirectory;
        args += " " + generatedManifestFile;
        args += " " + keepgenerated;

        for (int i = 0; i < files.length; ++i) {
            args += " " + files[i];
        }

        Commandline.Argument arguments = helperTask.createArg();
        arguments.setLine(args);
        helperTask.setClasspath(new Path(getProject(), execClassPath));
        if (helperTask.executeJava() != 0) {
            throw new BuildException("Execution of ejbc helper failed");
        }
    }
View Full Code Here

        //Weblogic.jspc calls System.exit() ... have to fork
        // Therefore, takes loads of time
        // Can pass directories at a time (*.jsp) but easily runs out of
        // memory on hefty dirs (even on  a Sun)
        Java helperTask = (Java) getProject().createTask("java");
        helperTask.setFork(true);
        helperTask.setClassname("weblogic.jspc");
        helperTask.setTaskName(getTaskName());
        String[] args = new String[12];

        File jspFile = null;
        String parents = "";
        int j = 0;
        //XXX  this array stuff is a remnant of prev trials.. gotta remove.
        args[j++] = "-d";
        args[j++] = destinationDirectory.getAbsolutePath().trim();
        args[j++] = "-docroot";
        args[j++] = sourceDirectory.getAbsolutePath().trim();
        args[j++] = "-keepgenerated"//TODO: Parameterise ??
        //Call compiler as class... dont want to fork again
        //Use classic compiler -- can be parameterised?
        args[j++] "-compilerclass";
        args[j++] = "sun.tools.javac.Main";
        //Weblogic jspc does not seem to work unless u explicitly set this...
        // Does not take the classpath from the env....
        // Am i missing something about the Java task??
        args[j++] = "-classpath";
        args[j++] = compileClasspath.toString();

        this.scanDir(files);
        log("Compiling " + filesToDo.size() + " JSP files");

        for (int i = 0; i < filesToDo.size(); i++) {
            //XXX
            // All this to get package according to weblogic standards
            // Can be written better... this is too hacky!
            // Careful.. similar code in scanDir , but slightly different!!
            String filename = (String) filesToDo.elementAt(i);
            jspFile = new File(filename);
            args[j] = "-package";
            parents = jspFile.getParent();
            if ((parents != null&& (!("").equals(parents))) {
                parents =  this.replaceString(parents, File.separator, "_.");
                args[j + 1] = destinationPackage + "." + "_" + parents;
            } else {
                args[j + 1] = destinationPackage;
            }


            args[j + 2] =  sourceDirectory + File.separator + filename;
            helperTask.clearArgs();

            for (int x = 0; x < j + 3; x++) {
                helperTask.createArg().setValue(args[x]);
            }

            helperTask.setClasspath(compileClasspath);
            if (helperTask.executeJava() != 0) {
                log(filename + " failed to compile", Project.MSG_WARN);
            }
        }
    }
View Full Code Here

     * @param genericJarFile jar file.
     * @param ejbFiles the hashtable.
     */
    private void addGenICGeneratedFiles(File genericJarFile, Hashtable ejbFiles) {
        // GenIC task
        Java genicTask = null;

        // GenIC class (3 GenIC classes for various versions of JOnAS
        // are supported)
        String genicClass = null;

        if (nogenic) {
            return;
        }

        genicTask = (Java) getTask().getProject().createTask("java");
        genicTask.setTaskName("genic");
        genicTask.setFork(true);

        // jonasroot
        genicTask.createJvmarg().setValue("-Dinstall.root=" + jonasroot);

        // java policy file
        String jonasConfigDir = jonasroot + File.separator + "config";
        File javaPolicyFile = new File(jonasConfigDir, "java.policy");
        if (javaPolicyFile.exists()) {
            genicTask.createJvmarg().setValue("-Djava.security.policy="
                              + javaPolicyFile.toString());
        }

        // outputdir
        try {
            outputdir = createTempDir();
        } catch (IOException aIOException) {
            String msg = "Cannot create temp dir: " + aIOException.getMessage();
            throw new BuildException(msg, aIOException);
        }
        log("Using temporary output directory: " + outputdir, Project.MSG_VERBOSE);

        genicTask.createArg().setValue("-d");
        genicTask.createArg().setFile(outputdir);

        // work around a bug of GenIC 2.5
        String key;
        File f;
        Enumeration keys = ejbFiles.keys();
        while (keys.hasMoreElements()) {
            key = (String) keys.nextElement();
            f = new File(outputdir + File.separator + key);
            f.getParentFile().mkdirs();
        }
        log("Worked around a bug of GenIC 2.5.", Project.MSG_VERBOSE);

        // classpath
        Path classpath = getCombinedClasspath();
        if (classpath == null) {
            classpath = new Path(getTask().getProject());
        }
        classpath.append(new Path(classpath.getProject(), jonasConfigDir));
        classpath.append(new Path(classpath.getProject(), outputdir.toString()));

        // try to create the classpath for the correct ORB
        if (orb != null) {
            String orbJar = jonasroot + File.separator + "lib"
                + File.separator + orb + "_jonas.jar";
            classpath.append(new Path(classpath.getProject(), orbJar));
        }

        log("Using classpath: " + classpath.toString(), Project.MSG_VERBOSE);
        genicTask.setClasspath(classpath);

        // class name (search in the classpath provided for the ejbjar element)
        genicClass = getGenicClassName(classpath);
        if (genicClass == null) {
            log("Cannot find GenIC class in classpath.", Project.MSG_ERR);
            throw new BuildException("GenIC class not found, please check the classpath.");
        } else {
            log("Using '" + genicClass + "' GenIC class." , Project.MSG_VERBOSE);
            genicTask.setClassname(genicClass);
        }

        // keepgenerated
        if (keepgenerated) {
            genicTask.createArg().setValue("-keepgenerated");
        }

        // nocompil
        if (nocompil) {
            genicTask.createArg().setValue("-nocompil");
        }

        // novalidation
        if (novalidation) {
            genicTask.createArg().setValue("-novalidation");
        }

        // javac
        if (javac != null) {
            genicTask.createArg().setValue("-javac");
            genicTask.createArg().setLine(javac);
        }

        // javacopts
        if (javacopts != null && !javacopts.equals("")) {
            genicTask.createArg().setValue("-javacopts");
            genicTask.createArg().setLine(javacopts);
        }

        // rmicopts
        if (rmicopts != null && !rmicopts.equals("")) {
            genicTask.createArg().setValue("-rmicopts");
            genicTask.createArg().setLine(rmicopts);
        }

        // secpropag
        if (secpropag) {
            genicTask.createArg().setValue("-secpropag");
        }

        // verbose
        if (verbose) {
            genicTask.createArg().setValue("-verbose");
                }

        // additionalargs
        if (additionalargs != null) {
            genicTask.createArg().setValue(additionalargs);
        }

        // the generated classes must not be added in the generic JAR!
        // is that buggy on old JOnAS (2.4) ??
        genicTask.createArg().setValue("-noaddinjar");

        // input file to process by GenIC
        genicTask.createArg().setValue(genericJarFile.getPath());

        // calling GenIC task
        log("Calling " + genicClass + " for " + getConfig().descriptorDir
            + File.separator + descriptorName + ".", Project.MSG_VERBOSE);

        if (genicTask.executeJava() != 0) {

            // the method deleteOnExit() do not work because the directory is not empty
            log("Deleting temp output directory '" + outputdir + "'.", Project.MSG_VERBOSE);
            deleteAllFiles(outputdir);

View Full Code Here

TOP

Related Classes of org.apache.tools.ant.taskdefs.Java

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.