463462 - Switches to Gradle build
diff --git a/.gitignore b/.gitignore
index 16098de..3fbb103 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,12 +1,13 @@
 */src/main/resources/META-INF/MANIFEST.MF
-*/src/main/webapp/META-INF/MANIFEST.MF
 */src/test/resources/META-INF/TEST.MF
 target
-deploy.sh
 integration-repo
 ivy-cache
-spring-build/lib/findbugs
-*.graffle
+.ant-targets-build.xml
 user-ivy.properties
-
+bin/
+build/
+.settings/
+.project
+.classpath
 
diff --git a/build.gradle b/build.gradle
new file mode 100644
index 0000000..a46cbdc
--- /dev/null
+++ b/build.gradle
@@ -0,0 +1,51 @@
+
+project(':apps:org.eclipse.virgo.apps.repository.core') {
+    dependencies {
+        testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+		testCompile project(':medic:org.eclipse.virgo.medic.test')
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "org.eclipse.osgi", version: equinoxVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.gemini", name: "org.eclipse.gemini.web.core", version: geminiWebVersion, configuration: "compile", ext: "jar"
+
+		compile project(':util:org.eclipse.virgo.util.math')
+		compile project(':util:org.eclipse.virgo.util.io')
+		compile project(':util:org.eclipse.virgo.util.jmx')
+		compile project(':util:org.eclipse.virgo.util.osgi.manifest')
+		compile project(':medic:org.eclipse.virgo.medic')
+		compile project(':repository:org.eclipse.virgo.repository')
+		compile project(':kernel:org.eclipse.virgo.kernel.services')
+
+        if (System.properties['weaving.enabled'] == 'true') {
+            aspectpath project(':medic:org.eclipse.virgo.medic')
+            aspectpath project(':util:org.eclipse.virgo.util.jmx')
+        }
+	}
+}
+
+project(':apps:org.eclipse.virgo.apps.repository.web') {
+    dependencies {
+		testCompile group: 'org.easymock', name: 'easymock', version: easymockVersion
+        testCompile group: "org.springframework", name: "org.springframework.test", version: springframeworkVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+        compile group: "org.springframework", name: "org.springframework.core", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        compile group: "org.springframework", name: "org.springframework.context", version: springframeworkVersion, configuration: "compile", ext: "jar"
+        compile group: "org.springframework", name: "org.springframework.web", version: springframeworkVersion, configuration: "compile", ext: "jar"
+
+		compile project(':util:org.eclipse.virgo.util.io')
+		compile project(':apps:org.eclipse.virgo.apps.repository.core')
+	}
+}
+
+project(':apps:org.eclipse.virgo.apps.splash') {
+    dependencies {
+        compile group: "org.eclipse.virgo.mirrored", name: "org.slf4j.api", version: slf4jVersion, configuration: "compile", ext: "jar"
+        compile group: "org.eclipse.virgo.mirrored", name: "javax.servlet", version: javaxServletVersion, configuration: "compile", ext: "jar"
+
+		compile project(':apps:org.eclipse.virgo.apps.repository.core')
+	}
+}
diff --git a/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/ExportableIndexFilePoolTests.java b/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/ExportableIndexFilePoolTests.java
index 99f4717..6053520 100644
--- a/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/ExportableIndexFilePoolTests.java
+++ b/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/ExportableIndexFilePoolTests.java
@@ -34,7 +34,7 @@
 public class ExportableIndexFilePoolTests {
 
     private FilePool filePool;
-    private File dirFile = new File("target/testfilepooldir");
+    private File dirFile = new File("build/testfilepooldir");
     
     @Before
     public void setupFilePools() throws Exception {
diff --git a/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/LazyExportableXMLArtifactDescriptorPersisterTests.java b/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/LazyExportableXMLArtifactDescriptorPersisterTests.java
index 998e6e6..1dced7a 100644
--- a/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/LazyExportableXMLArtifactDescriptorPersisterTests.java
+++ b/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/LazyExportableXMLArtifactDescriptorPersisterTests.java
@@ -45,8 +45,8 @@
 public class LazyExportableXMLArtifactDescriptorPersisterTests {
 
     
-    private File solePoolFile = new File("target/lazypersistertest/file001");
-    private File nextPoolFile = new File("target/lazypersistertest/file002");
+    private File solePoolFile = new File("build/lazypersistertest/file001");
+    private File nextPoolFile = new File("build/lazypersistertest/file002");
     
     @Test
     public void persistAndLoadArtifacts() throws Exception {
@@ -72,8 +72,8 @@
     
     private Set<RepositoryAwareArtifactDescriptor> generateDescriptorSet() {
         Set<RepositoryAwareArtifactDescriptor> setDescriptors = new HashSet<RepositoryAwareArtifactDescriptor>();
-        RepositoryAwareArtifactDescriptor raad1 = new StubRepositoryAwareArtifactDescriptor("repo-name", new File("target/testlazypersister/raad1").toURI(), "bundle", "bundle.raad1", new Version("1.1"), "raad1", new HashSet<Attribute>());
-        RepositoryAwareArtifactDescriptor raad2 = new StubRepositoryAwareArtifactDescriptor("repo-name", new File("target/testlazypersister/raad2").toURI(), "bundle", "bundle.raad2", new Version("1.2"), "raad2", new HashSet<Attribute>());
+        RepositoryAwareArtifactDescriptor raad1 = new StubRepositoryAwareArtifactDescriptor("repo-name", new File("build/testlazypersister/raad1").toURI(), "bundle", "bundle.raad1", new Version("1.1"), "raad1", new HashSet<Attribute>());
+        RepositoryAwareArtifactDescriptor raad2 = new StubRepositoryAwareArtifactDescriptor("repo-name", new File("build/testlazypersister/raad2").toURI(), "bundle", "bundle.raad2", new Version("1.2"), "raad2", new HashSet<Attribute>());
         
         setDescriptors.add(raad1);
         setDescriptors.add(raad2);
diff --git a/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/StandardRepositoryManagerTests.java b/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/StandardRepositoryManagerTests.java
index 7b4f7c4..c58932f 100644
--- a/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/StandardRepositoryManagerTests.java
+++ b/org.eclipse.virgo.apps.repository.core/src/test/java/org/eclipse/virgo/apps/repository/core/internal/StandardRepositoryManagerTests.java
@@ -60,7 +60,7 @@
     private final Map<String, RepositoryConfiguration> configurationMap = new HashMap<String, RepositoryConfiguration>();
     {
         final RepositoryConfiguration repositoryConfiguration 
-        = new ExternalStorageRepositoryConfiguration("testRepoName", new File("target/indexDir"), new HashSet<ArtifactBridge>(), "testDirToWatch", "testHostRepoDomain");
+        = new ExternalStorageRepositoryConfiguration("testRepoName", new File("build/indexDir"), new HashSet<ArtifactBridge>(), "testDirToWatch", "testHostRepoDomain");
         this.configurationMap.put("testRepoName", repositoryConfiguration);
     }
     
diff --git a/org.eclipse.virgo.apps.repository.core/template.mf b/org.eclipse.virgo.apps.repository.core/template.mf
index 3f236b6..e6f7f6c 100644
--- a/org.eclipse.virgo.apps.repository.core/template.mf
+++ b/org.eclipse.virgo.apps.repository.core/template.mf
@@ -4,12 +4,12 @@
 Bundle-SymbolicName: org.eclipse.virgo.apps.repository.core
 Bundle-Version: ${version}
 Import-Template: 
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
- org.eclipse.virgo.kernel.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- org.eclipse.virgo.repository.*;version="${org.eclipse.virgo.repository:[=.=.=, +1)}",
- org.eclipse.gemini.web.*;version="${org.eclipse.gemini.web:[=.=.=, +1)}",
- org.eclipse.virgo.util.*;version="${org.eclipse.virgo.util:[=.=.=, +1)}",
- org.aspectj.*;version="${org.aspectj:[=.=.=, +1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.kernel.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.repository.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.gemini.web.*;version="${geminiWebVersion:[=.=.=, +1)}",
+ org.eclipse.virgo.util.*;version="${version:[=.=.=, +1)}",
+ org.aspectj.*;version="${orgAspectjVersion:[=.=.=, +1)}",
  org.osgi.framework.*;version="0",
  javax.management.*;version="0",
  org.slf4j.*;version="0"
diff --git a/org.eclipse.virgo.apps.repository.test/src/test/java/org/eclipse/virgo/apps/repository/test/HostedRepositoryIntegrationTests.java b/org.eclipse.virgo.apps.repository.test/src/test/java/org/eclipse/virgo/apps/repository/test/HostedRepositoryIntegrationTests.java
index 09ce847..b3da0d1 100644
--- a/org.eclipse.virgo.apps.repository.test/src/test/java/org/eclipse/virgo/apps/repository/test/HostedRepositoryIntegrationTests.java
+++ b/org.eclipse.virgo.apps.repository.test/src/test/java/org/eclipse/virgo/apps/repository/test/HostedRepositoryIntegrationTests.java
@@ -43,9 +43,9 @@
 @Ignore("[DMS-2878]")
 public class HostedRepositoryIntegrationTests {
 
-    private final static File INDEX_LOCATION = new File("target/work/org.eclipse.virgo.apps.repository.core_2.0.0/integration-test.index");
+    private final static File INDEX_LOCATION = new File("build/work/org.eclipse.virgo.apps.repository.core_2.0.0/integration-test.index");
 
-    private final static File W_INDEX_LOCATION = new File("target/work/org.eclipse.virgo.apps.repository.core_2.0.0/watched-integration-test.index");
+    private final static File W_INDEX_LOCATION = new File("build/work/org.eclipse.virgo.apps.repository.core_2.0.0/watched-integration-test.index");
 
     private static boolean appDeployed = false;
     
@@ -102,7 +102,7 @@
 	}
 
     private static PathReference packageWebModule() throws IOException {
-        PathReference packagedModule = new PathReference("target/org.eclipse.virgo.apps.repository.web.war");
+        PathReference packagedModule = new PathReference("build/org.eclipse.virgo.apps.repository.web.war");
         if (packagedModule.exists()) {
             assertTrue(packagedModule.delete());
         }
diff --git a/org.eclipse.virgo.apps.repository.test/template.mf b/org.eclipse.virgo.apps.repository.test/template.mf
index de64497..f117037 100644
--- a/org.eclipse.virgo.apps.repository.test/template.mf
+++ b/org.eclipse.virgo.apps.repository.test/template.mf
@@ -5,12 +5,12 @@
 Bundle-Version: ${version}
 Import-Template: 
  org.eclipse.virgo.kernel.*;version="${org.eclipse.virgo.kernel:[=.=.=, +1)}",
- org.eclipse.virgo.nano.*;version="${org.eclipse.virgo.nano:[=.=.=, +1)}",
- org.eclipse.virgo.repository.*;version="${org.eclipse.virgo.repository:[=.=.=, +1)}",
- org.eclipse.virgo.util.*;version="${org.eclipse.virgo.util:[=.=.=, +1)}",
- org.eclipse.virgo.medic.*;version="${org.eclipse.virgo.medic:[=.=.=, +1)}",
+ org.eclipse.virgo.nano.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.repository.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.util.*;version="${version:[=.=.=, +1)}",
+ org.eclipse.virgo.medic.*;version="${version:[=.=.=, +1)}",
  org.eclipse.gemini.web.*;version="${org.eclipse.gemini.web:[=.=.=, +1)}",
- org.aspectj.*;version="${org.aspectj:[=.=.=, +1)}",
+ org.aspectj.*;version="${orgAspectjVersion:[=.=.=, +1)}",
  org.junit.*;version="${org.junit:[=.=.=, +1)}",
  org.osgi.framework.*;version="0",
  javax.management.*;version="0",
diff --git a/org.eclipse.virgo.apps.repository.web/template.mf b/org.eclipse.virgo.apps.repository.web/template.mf
index 5f2e329..f3829e0 100644
--- a/org.eclipse.virgo.apps.repository.web/template.mf
+++ b/org.eclipse.virgo.apps.repository.web/template.mf
@@ -7,11 +7,11 @@
 Web-ContextPath: org.eclipse.virgo.apps.repository
 Import-Template: 
  org.eclipse.virgo.apps.repository.*;version="${version:[=.=.=, =.=.+1)}",
- javax.servlet.*;version="${javax.servlet:[2.5.0,+1)}",
- org.springframework.*;version="${org.springframework:[2.5.6, +1)}",
+ javax.servlet.*;version="${javaxServletVersion:[2.5.0,+1)}",
+ org.springframework.*;version="${springframeworkVersion:[2.5.6, +1)}",
  org.osgi.framework.*;version="0"
 Import-Package: 
- org.springframework.web.context;version="${org.springframework:[2.5.6, +1)}",
- org.springframework.web.servlet;version="${org.springframework:[2.5.6, +1)}",
- org.eclipse.virgo.web.dm;version="${org.eclipse.virgo.web:[=.=.=, +1)}",
- org.springframework.beans.factory.xml;version="${org.springframework:[2.5.6, +1)}"
+ org.springframework.web.context;version="${springframeworkVersion:[2.5.6, +1)}",
+ org.springframework.web.servlet;version="${springframeworkVersion:[2.5.6, +1)}",
+ org.eclipse.virgo.web.dm;version="${version:[=.=.=, +1)}",
+ org.springframework.beans.factory.xml;version="${springframeworkVersion:[2.5.6, +1)}"
diff --git a/org.eclipse.virgo.apps.splash/src/main/webapp/META-INF/MANIFEST.MF b/org.eclipse.virgo.apps.splash/src/main/webapp/META-INF/MANIFEST.MF
index 8e74ce9..633dc89 100644
--- a/org.eclipse.virgo.apps.splash/src/main/webapp/META-INF/MANIFEST.MF
+++ b/org.eclipse.virgo.apps.splash/src/main/webapp/META-INF/MANIFEST.MF
@@ -7,4 +7,3 @@
 Bundle-SymbolicName: org.eclipse.virgo.apps.splash

 Web-ContextPath: /

 Import-Package: org.eclipse.virgo.apps.splash

-

diff --git a/org.eclipse.virgo.apps.splash/template.mf b/org.eclipse.virgo.apps.splash/template.mf
index 181066b..31960e4 100644
--- a/org.eclipse.virgo.apps.splash/template.mf
+++ b/org.eclipse.virgo.apps.splash/template.mf
@@ -6,7 +6,6 @@
 Bundle-ClassPath: WEB-INF/classes
 Web-ContextPath: /
 Import-Template: 
- javax.servlet.*;version="${javax.servlet:[2.5.0,+1)}",
- org.slf4j;version="${org.slf4j.api:[=.=.=,+1)}"
+ javax.servlet.*;version="${javaxServletVersion:[2.5.0,+1)}",
+ org.slf4j;version="${slf4jVersion:[=.=.=,+1)}"
 Excluded-Exports: *
-