diff --git a/releng.wtpbuilder/components/dali-sdk/dependency.xml b/releng.wtpbuilder/components/dali-sdk/dependency.xml
index f77ba060a3109250f5f73e57e23c10b96af78d6b..2900e342418a5489c1e6e2ed531442b91e714e87 100644
--- a/releng.wtpbuilder/components/dali-sdk/dependency.xml
+++ b/releng.wtpbuilder/components/dali-sdk/dependency.xml
@@ -79,12 +79,7 @@
                 name="groupId"
                 value="eclipseTestFramework"/>
         </antcall>
-        <antcall
-            target="getAndInstall">
-            <param
-                name="groupId"
-                value="dita"/>
-        </antcall>
+
     </target>
     <target
         name="getAndInstall"
diff --git a/releng.wtpbuilder/components/dali.tests/dependency.xml b/releng.wtpbuilder/components/dali.tests/dependency.xml
index a6b4bf9d585343e6d57f7f2f58591f7663214442..096a8ba0d6b3cb156d28fac3af0fbfaafd16aa88 100644
--- a/releng.wtpbuilder/components/dali.tests/dependency.xml
+++ b/releng.wtpbuilder/components/dali.tests/dependency.xml
@@ -20,7 +20,29 @@
         -->
         <property
             file="${dependency.properties}"/>
-
+        <mkdir
+            dir="${buildDirectory}/maps/${env.RELENG}/maps"/>
+        <antcall
+            target="getAndInstall">
+            <param
+                name="groupId"
+                value="orbitthirdpartymap"/>
+            <param
+                name="base.install.dir"
+                value="${buildDirectory}/maps/${env.RELENG}/maps/"/>
+        </antcall>
+        <property
+            name="pde.builder.path"
+            value="${env.BASE_BUILDERS}/${eclipse.builder.version}/${eclipse.builder}"/>
+        <echo
+            level="debug"
+            message="pde.builder.path: ${pde.builder.path}"/>
+        <echo
+            level="debug"
+            message="eclipse.builder.version: ${eclipse.builder.version}"/>
+        <echo
+            level="debug"
+            message="eclipse.builder: ${eclipse.builder}"/>
         <antcall
             target="getAndInstall">
             <param
@@ -52,7 +74,7 @@
                 value="eclipse"/>
         </antcall>
         <antcall
-            target="getAndInstall">
+            target="getAndInstallRepo">
             <param
                 name="groupId"
                 value="eclipseTestFramework"/>
@@ -85,5 +107,25 @@
         </ant>
 
     </target>
-
+       <target
+           name="getAndInstallRepo"
+           if="${groupId}.url">
+           <ant
+               antfile="${dependencyTargets}"
+               target="checkDependency">
+               <property
+                   name="groupId"
+                   value="${groupId}"/>
+           </ant>
+           <ant
+               antfile="${dependencyTargets}"
+               target="installRepo">
+               <property
+                   name="groupId"
+                   value="${groupId}"/>
+               <property
+                   name="install.destination"
+                   value="${base.install.dir}"/>
+           </ant>
+       </target>	
 </project>
diff --git a/releng.wtpbuilder/components/jst-sdk/dependency.xml b/releng.wtpbuilder/components/jst-sdk/dependency.xml
index 3ade6d2dd6569c2645d8110b5530d486ee36c3f3..661098a06619e153d0c3f4edd8e6e36586c101f4 100644
--- a/releng.wtpbuilder/components/jst-sdk/dependency.xml
+++ b/releng.wtpbuilder/components/jst-sdk/dependency.xml
@@ -39,6 +39,15 @@
         <echo
             level="debug"
             message="eclipse.builder: ${eclipse.builder}"/>
+        <antcall
+            target="getAndInstall">
+            <param
+                name="groupId"
+                value="orbitthirdpartymap"/>
+            <param
+                name="base.install.dir"
+                value="${buildDirectory}/maps/${env.RELENG}/maps/"/>
+        </antcall>
         <antcall
             target="getAndInstall">
             <param
diff --git a/releng.wtpbuilder/components/jst.tests/dependency.xml b/releng.wtpbuilder/components/jst.tests/dependency.xml
index f7f54349b3fa53bd964b2587c7d06d6119d9347e..6555420019d24a37cbb3b2799ccc3d6cc7dc9173 100644
--- a/releng.wtpbuilder/components/jst.tests/dependency.xml
+++ b/releng.wtpbuilder/components/jst.tests/dependency.xml
@@ -18,6 +18,15 @@
             file="${dependency.properties}"/>
         <mkdir
             dir="${buildDirectory}/maps/${env.RELENG}/maps"/>
+        <antcall
+            target="getAndInstall">
+            <param
+                name="groupId"
+                value="orbitthirdpartymap"/>
+            <param
+                name="base.install.dir"
+                value="${buildDirectory}/maps/${env.RELENG}/maps/"/>
+        </antcall>
         <property
             name="pde.builder.path"
             value="${env.BASE_BUILDERS}/${eclipse.builder.version}/${eclipse.builder}"/>
@@ -70,7 +79,7 @@
                 value="eclipse"/>
         </antcall>
         <antcall
-            target="getAndInstall">
+            target="getAndInstallRepo">
             <param
                 name="groupId"
                 value="eclipseTestFramework"/>
@@ -97,4 +106,25 @@
                 value="${base.install.dir}"/>
         </ant>
     </target>
+       <target
+           name="getAndInstallRepo"
+           if="${groupId}.url">
+           <ant
+               antfile="${dependencyTargets}"
+               target="checkDependency">
+               <property
+                   name="groupId"
+                   value="${groupId}"/>
+           </ant>
+           <ant
+               antfile="${dependencyTargets}"
+               target="installRepo">
+               <property
+                   name="groupId"
+                   value="${groupId}"/>
+               <property
+                   name="install.destination"
+                   value="${base.install.dir}"/>
+           </ant>
+       </target>	
 </project>
\ No newline at end of file
diff --git a/releng.wtpbuilder/components/wst-sdk/dependency.xml b/releng.wtpbuilder/components/wst-sdk/dependency.xml
index bbc055edf26df080b36d6994e59e166759cd633e..91a662261f680e8512ff49ef43c821f78a376731 100644
--- a/releng.wtpbuilder/components/wst-sdk/dependency.xml
+++ b/releng.wtpbuilder/components/wst-sdk/dependency.xml
@@ -18,15 +18,6 @@
             file="${dependency.properties}"/>
         <mkdir
             dir="${buildDirectory}/maps/${env.RELENG}/maps"/>
-        <antcall
-            target="getAndInstall">
-            <param
-                name="groupId"
-                value="orbitthirdpartymap"/>
-            <param
-                name="base.install.dir"
-                value="${buildDirectory}/maps/${env.RELENG}/maps/"/>
-        </antcall>
         <property
             name="pde.builder.path"
             value="${env.BASE_BUILDERS}/${eclipse.builder.version}/${eclipse.builder}"/>
diff --git a/releng.wtpbuilder/components/wst.tests/dependency.xml b/releng.wtpbuilder/components/wst.tests/dependency.xml
index 6749c90d97c97cab39c3b67c30460b0cb1fe05b0..4a4fea603eb9d9f7185c78de674ebee04801d4ae 100644
--- a/releng.wtpbuilder/components/wst.tests/dependency.xml
+++ b/releng.wtpbuilder/components/wst.tests/dependency.xml
@@ -30,16 +30,6 @@
         <echo
             level="debug"
             message="eclipse.builder: ${eclipse.builder}"/>
-
-        <antcall
-            target="getAndInstall">
-            <param
-                name="groupId"
-                value="orbitthirdpartymap"/>
-            <param
-                name="base.install.dir"
-                value="${buildDirectory}/maps/${env.RELENG}/maps/"/>
-        </antcall>
         <antcall
             target="getAndInstall">
             <param
@@ -65,7 +55,7 @@
                 value="eclipse"/>
         </antcall>
         <antcall
-            target="getAndInstall">
+            target="getAndInstallRepo">
             <param
                 name="groupId"
                 value="eclipseTestFramework"/>
@@ -92,4 +82,25 @@
                 value="${base.install.dir}"/>
         </ant>
     </target>
+       <target
+           name="getAndInstallRepo"
+           if="${groupId}.url">
+           <ant
+               antfile="${dependencyTargets}"
+               target="checkDependency">
+               <property
+                   name="groupId"
+                   value="${groupId}"/>
+           </ant>
+           <ant
+               antfile="${dependencyTargets}"
+               target="installRepo">
+               <property
+                   name="groupId"
+                   value="${groupId}"/>
+               <property
+                   name="install.destination"
+                   value="${base.install.dir}"/>
+           </ant>
+       </target>	
 </project>
\ No newline at end of file
diff --git a/releng.wtpbuilder/scripts/dependency/template.xml b/releng.wtpbuilder/scripts/dependency/template.xml
index 79df12dea80e883d3737f23a566008bc41f4e4a7..9d87c2a26dc8f27f4b2414ba7465f4f639c244fc 100644
--- a/releng.wtpbuilder/scripts/dependency/template.xml
+++ b/releng.wtpbuilder/scripts/dependency/template.xml
@@ -228,6 +228,7 @@
     <!-- 
               We first unzip the repo, then use p2 directory app to install into the eclispe
               location.
+              TODO: could we just make p2runnable in "transformed" repository? for build case.
               -->         
               <!--
                    We use the exec method for unzip, so we won't fail if a 
@@ -243,8 +244,11 @@
             message="tobeinstalledrepo:  ${tobeinstalledrepo}"/>
         <echo
             message="tobeInstalledfeaturegroups:  ${dependency.tobeinstalledfeaturegroups}"/>
+    	<delete failonerror="false">
+    		<dirset dir="${tobeinstalledrepo}" />
+    	</delete>
         <mkdir
-            dir="${local.cache.dir}/repos/${groupId}"/>
+            dir="${tobeinstalledrepo}"/>
         <exec
             dir="."
             executable="unzip">
@@ -264,7 +268,8 @@
             resultProperty="p2DirectorInstallResult"
             failonerror="true"
             jar="${eclipse.launcher}"	
-            jvm="${env.JAVA_6_HOME}/bin/java">
+            jvm="${env.JAVA_6_HOME}/bin/java"
+            dir="install.destination">
            
             <jvmarg
                 value="-Djava.io.tmpdir=${env.RECOMMENDED_TMP_DIR}"/>