jvanzyl 02/03/04 20:12:57
Modified: . build-bootstrap.xml project.properties project.xml
src/java/org/apache/maven BaseProjectTask.java
MavenUtils.java ProjectProperties.java
Added: . build.xml
Log:
The build.xml file is now being checked into CVS because we have to deal
with project specific targets and it is most convenient to place these
specifics in build.xml so that users can simply type: 'ant <target>'.
Standard targets are in the maven build files and the build.xml file
just delegates to them.
Revision Changes Path
1.24 +3 -0 jakarta-turbine-maven/build-bootstrap.xml
Index: build-bootstrap.xml
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/build-bootstrap.xml,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -r1.23 -r1.24
--- build-bootstrap.xml 1 Mar 2002 18:11:26 -0000 1.23
+++ build-bootstrap.xml 5 Mar 2002 04:12:57 -0000 1.24
@@ -40,6 +40,7 @@
<!-- Remove the elements of past generations before creating
the new one -->
+ <!--
<delete file="build-metrics.xml"/>
<delete file="build-docs.xml"/>
<delete file="build-test.xml"/>
@@ -47,6 +48,8 @@
<delete file="default.properties"/>
<delete file="LICENSE"/>
<delete file="README.txt"/>
+ -->
+
<mkdir dir="${basedir}/bootstrap"/>
<javac
1.2 +16 -1 jakarta-turbine-maven/project.properties
Index: project.properties
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/project.properties,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- project.properties 24 Feb 2002 06:59:38 -0000 1.1
+++ project.properties 5 Mar 2002 04:12:57 -0000 1.2
@@ -2,9 +2,24 @@
# P R O J E C T P R O P E R T I E S
# -------------------------------------------------------------------
+name = jakarta-turbine-maven
+version = 0.1
+project = maven
+id = maven
+organization = Apache Software Foundation
+inception.year = 2001
+package = org.apache.maven
+compile.debug = on
+compile.optimize = off
+compile.deprecation = off
+
+src.dir = src
+
parserJJTreeGrammar = ${src.dir}/java/org/apache/maven/java/parser/JavaParser.jjt
outputDirectory = ${build.dir}/src/java/org/apache/maven/java/parser
-#parserGrammar = ${outputDirectory}/JavaParser.jj
parserGrammar = ${src.dir}/java/org/apache/maven/java/parser/JavaParser.jj
nodePackage = org.apache.maven.java.parser
workspace = src/descriptors/workspace/jvz.xml
+
+parserGrammar.jrcs = ${src.dir}/java/org/apache/maven/jrcs/rcs/ArchiveParser.jj
+outputDirectory.jrcs = ${build.dir}/src/java/org/apache/maven/jrcs/rcs
1.17 +1 -0 jakarta-turbine-maven/project.xml
Index: project.xml
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/project.xml,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -r1.16 -r1.17
--- project.xml 2 Mar 2002 22:05:04 -0000 1.16
+++ project.xml 5 Mar 2002 04:12:57 -0000 1.17
@@ -262,6 +262,7 @@
<!-- Resources that are packaged up inside the JAR file -->
<jarResources>
+ <jarResource>src/templates/**</jarResource>
</jarResources>
<jars>
1.11 +102 -158 jakarta-turbine-maven/build.xml
1.2 +6 -2
jakarta-turbine-maven/src/java/org/apache/maven/BaseProjectTask.java
Index: BaseProjectTask.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-maven/src/java/org/apache/maven/BaseProjectTask.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- BaseProjectTask.java 28 Feb 2002 22:41:02 -0000 1.1
+++ BaseProjectTask.java 5 Mar 2002 04:12:57 -0000 1.2
@@ -55,6 +55,8 @@
*/
import java.io.File;
+import java.util.ArrayList;
+import java.util.HashMap;
import org.apache.tools.ant.BuildException;
@@ -70,7 +72,7 @@
* An ant task for creating an xml schema from an sql schema
*
* @author <a href="[EMAIL PROTECTED]">Jason van Zyl</a>
- * @version $Id: BaseProjectTask.java,v 1.1 2002/02/28 22:41:02 jvanzyl Exp $
+ * @version $Id: BaseProjectTask.java,v 1.2 2002/03/05 04:12:57 jvanzyl Exp $
*/
public class BaseProjectTask
extends TexenTask
@@ -113,7 +115,9 @@
Mapper m = new Mapper();
mavenProject = (Project) m.map(projectDescriptor,
"org.apache.maven.project.Project");
-
+
+ context.put("buildElements", new ArrayList());
+ context.put("delegators", new HashMap());
context.put("project", mavenProject);
return context;
}
1.2 +32 -3 jakarta-turbine-maven/src/java/org/apache/maven/MavenUtils.java
Index: MavenUtils.java
===================================================================
RCS file: /home/cvs/jakarta-turbine-maven/src/java/org/apache/maven/MavenUtils.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- MavenUtils.java 28 Feb 2002 22:41:02 -0000 1.1
+++ MavenUtils.java 5 Mar 2002 04:12:57 -0000 1.2
@@ -56,17 +56,21 @@
import java.io.File;
+import org.apache.commons.lang.Strings;
+
import org.apache.maven.project.Project;
import org.apache.stratum.xo.Mapper;
+import org.apache.tools.ant.DirectoryScanner;
+
/**
* An ant task that takes values from the project descriptor and
* creates the necessary patternsets and paths required to build
* the project.
*
* @author <a href="[EMAIL PROTECTED]">Jason van Zyl</a>
- * @version $Id: MavenUtils.java,v 1.1 2002/02/28 22:41:02 jvanzyl Exp $
+ * @version $Id: MavenUtils.java,v 1.2 2002/03/05 04:12:57 jvanzyl Exp $
*/
public class MavenUtils
{
@@ -79,7 +83,7 @@
* Create a Project object given a file descriptor.
*
* @throws Exception
- */
+ */;
public static Project getProject(File projectDescriptor)
throws Exception
{
@@ -87,4 +91,29 @@
Project project = (Project) mapper.map(projectDescriptor,PROJECT_CLASS);
return project;
}
-}
+
+
+ /**
+ * Get a set of files from a specifed directory with a set of includes.
+ *
+ * @param directory Directory to scan
+ * @param includes Comma separated list of includes
+ * @return files
+ */
+ public static String[] getFiles(String directory, String includes)
+ {
+ DirectoryScanner directoryScanner = new DirectoryScanner();
+ directoryScanner.setBasedir(new File(directory));
+ directoryScanner.setIncludes(Strings.split(includes,","));
+ directoryScanner.scan();
+ String[] files = directoryScanner.getIncludedFiles();
+
+ for (int i = 0; i < files.length; i++)
+ {
+ files[i] = new File(directory,files[i]).getAbsolutePath();
+ }
+
+ return files;
+ }
+
+}
\ No newline at end of file
1.5 +45 -30
jakarta-turbine-maven/src/java/org/apache/maven/ProjectProperties.java
Index: ProjectProperties.java
===================================================================
RCS file:
/home/cvs/jakarta-turbine-maven/src/java/org/apache/maven/ProjectProperties.java,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- ProjectProperties.java 3 Mar 2002 05:04:58 -0000 1.4
+++ ProjectProperties.java 5 Mar 2002 04:12:57 -0000 1.5
@@ -80,7 +80,7 @@
* the project.
*
* @author <a href="[EMAIL PROTECTED]">Jason van Zyl</a>
- * @version $Id: ProjectProperties.java,v 1.4 2002/03/03 05:04:58 brekke Exp $
+ * @version $Id: ProjectProperties.java,v 1.5 2002/03/05 04:12:57 jvanzyl Exp $
*/
public class ProjectProperties
extends ProjectExecutor
@@ -95,22 +95,24 @@
{
log("Creating classpath reference ...");
createClasspathReference();
-
+
log("Creating source set reference ...");
- createSetReference("src.set",
- mavenProject.getBuild().getSourceDirectories());
+ createPathReference("src.set",
+ mavenProject.getBuild().getSourceDirectories());
log("Creating test source set reference ...");
- createSetReference("test.src.set",
- mavenProject.getBuild().getTestSourceDirectories());
+ createPathReference("test.src.set",
+ mavenProject.getBuild().getTestSourceDirectories());
log("Creating unit test class entries reference ...");
- createClassEntriesReference("unit.test.set",
- mavenProject.getBuild().getUnitTestClassEntries());
+ createPatternSetReference("unit.test.set",
+ mavenProject.getBuild().getUnitTestClassEntries());
log("Creating run-time test class entries reference ...");
- createClassEntriesReference("runtime.test.set",
- mavenProject.getBuild().getRuntimeTestClassEntries());
+ createPatternSetReference("runtime.test.set",
+ mavenProject.getBuild().getRuntimeTestClassEntries());
+
+ createJarResourcesProperty();
}
// Create the classpath reference
@@ -118,7 +120,7 @@
{
Path classpath = new Path(getProject());
String libRepo = getProject().getProperty("lib.repo");
-
+
for (Iterator i = mavenProject.getDependencies().iterator(); i.hasNext();)
{
Dependency dependency = (Dependency) i.next();
@@ -127,16 +129,16 @@
p.setPath(new File(libRepo, dependency.getJar()).getAbsolutePath());
classpath.append(p);
}
-
+
getProject().addReference("classpath", classpath);
}
// Create the source directories reference
- private void createSetReference(String reference, List directories)
+ private void createPathReference(String reference, List directories)
{
Path srcSet = new Path(getProject());
String libRepo = getProject().getProperty("lib.repo");
-
+
for (Iterator i = directories.iterator(); i.hasNext();)
{
String sourceDirectory = (String) i.next();
@@ -145,61 +147,74 @@
p.setPath(sourceDirectory);
srcSet.append(p);
}
-
+
getProject().addReference(reference, srcSet);
}
// Create the source directories reference
- private void createClassEntriesReference(String reference, List patterns)
+ private void createPatternSetReference(String reference, List patterns)
{
String libRepo = getProject().getProperty("lib.repo");
StringBuffer includesSb = new StringBuffer();
StringBuffer excludesSb = new StringBuffer();
PatternSet patternSet = new PatternSet();
-
+
for (Iterator i = patterns.iterator(); i.hasNext();)
{
String line = (String) i.next();
line = line.trim();
-
+
if (line.startsWith("include"))
{
// We have something like the following pattern:
// include = conf/foo.xml
includesSb.append(Strings.split(line,"=",-1)[1]).append(",");
-
+
}
-
- if (line.startsWith("exclude"))
+ else if (line.startsWith("exclude"))
{
// We have something like the following pattern:
// exclude = conf/foo.xml
excludesSb.append(Strings.split(line,"=",-1)[1]).append(",");
}
-
- // We have a jar descriptor file
- includesSb.append(line).append(",");
+ else
+ {
+ // We have a jar descriptor file
+ includesSb.append(line).append(",");
+ }
}
-
+
String includes = includesSb.toString();
String excludes = excludesSb.toString();
-
+
if (includes.length() > 0)
{
// Remove trailing comma
includes = includes.substring(0,includes.length()-1);
patternSet.setIncludes(includes);
log("includes: " + includes);
- }
-
+ }
+
if (excludes.length() > 0)
{
// Remove trailing comma
excludes = excludes.substring(0,excludes.length()-1);
patternSet.setExcludes(excludes);
log("excludes: " + excludes);
- }
-
+ }
+
getProject().addReference(reference, patternSet);
+ }
+
+ public void createJarResourcesProperty()
+ {
+ if (mavenProject.getBuild().getJarResources().size() > 0)
+ {
+ getProject().setProperty("jar.resources.present", "true");
+ }
+
+ createPatternSetReference("jar.resources.set",
+ mavenProject.getBuild().getJarResources());
+
}
}
--
To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>