| | |
| | | import javax.tools.StandardJavaFileManager;
|
| | | import javax.tools.ToolProvider;
|
| | | import org.apache.commons.io.FileUtils;
|
| | | import org.apache.tools.ant.Project;
|
| | | import org.apache.tools.ant.ProjectHelper;
|
| | |
|
| | | /**
|
| | | *
|
| | |
| | |
|
| | | private static final Logger logger = Logger.getLogger(CompileService.class.getName());
|
| | |
|
| | | public String antBuild(String relPath) {
|
| | | File targetDir = getTargetDir(relPath); // App-Ordner
|
| | | StringBuilder sb = new StringBuilder();
|
| | | sb.append("Ant build ist noch nicht implementiert.");
|
| | |
|
| | | sb.append("<br/>");
|
| | | sb.append("targetDir: ");
|
| | | sb.append(targetDir.getAbsolutePath());
|
| | | |
| | | File buildFile = new File(targetDir, "build.xml");
|
| | | Project p = new Project();
|
| | | //p.setName("FileCms Build");
|
| | | FileCmsBuildListener listener = new FileCmsBuildListener();
|
| | | p.addBuildListener(listener);
|
| | | p.setUserProperty("ant.file", buildFile.getAbsolutePath());
|
| | | p.init();
|
| | | ProjectHelper helper = ProjectHelper.getProjectHelper();
|
| | | p.addReference("ant.projectHelper", helper);
|
| | | helper.parse(p, buildFile);
|
| | | p.executeTarget(p.getDefaultTarget()); |
| | | sb.append("<br/>");
|
| | | sb.append(listener.getOutput());
|
| | | |
| | | return sb.toString();
|
| | | }
|
| | | |
| | | |
| | | /**
|
| | | * Annahme: relPath zeigt auf einen Ordner, in dem ein build-Ordner die
|
| | | * fertigen Klassen und ein web-Ordner die Struktur mit WEB-INF
|