wlu: updated
diff --git a/org.eclipse.epf.toolbox/src/org/eclipse/epf/toolbox/utils/CopyPIIFiles.java b/org.eclipse.epf.toolbox/src/org/eclipse/epf/toolbox/utils/CopyPIIFiles.java
index 240a13b..6a62a12 100644
--- a/org.eclipse.epf.toolbox/src/org/eclipse/epf/toolbox/utils/CopyPIIFiles.java
+++ b/org.eclipse.epf.toolbox/src/org/eclipse/epf/toolbox/utils/CopyPIIFiles.java
@@ -15,7 +15,7 @@
 	private static boolean localDebug = true;
 	
 	private static final String[] startWithFiles = {
-		"spalsh.",
+		"splash.",
 	};
 	
 	private static final String[] types = {
@@ -25,13 +25,31 @@
 		".js",
 	};
 	
+	private static final String[] pathNames = {
+		"com.ibm.rmc",
+		"org.eclipse.epf",
+	};
+	
+	private static final String[] excludeFolders = {
+		"bin",
+		"CVS",
+		"nl",
+	};
+	
 	private static Set<String> typeSet; 
+	private static Set<String> excludeFolderSet; 
+	
 	
 	static {
 		typeSet = new HashSet<String>();
 		for (String type : types) {
 			typeSet.add(type);
 		}
+		
+		excludeFolderSet = new HashSet<String>();
+		for (String folder : excludeFolders) {
+			excludeFolderSet.add(folder);
+		}
 	}
 	
 	//Hard coded parameters
@@ -67,7 +85,9 @@
 		int ccCount = 0;
 		for (File file : files) {
 			if (file.isDirectory()) {
-				subDirs.add(file);
+				if (toProcessFolder(file)) {
+					subDirs.add(file);
+				}
 			} else {
 				if (toCopyFile(file)) {
 					ccCount++;
@@ -107,4 +127,22 @@
 		return typeSet.contains(ext);
 	}
 	
+	private boolean toProcessFolder(File folder) {
+		if (excludeFolderSet.contains(folder.getName())) {
+			return false;
+		}		
+		String filePath = folder.getAbsolutePath();
+		
+		boolean containingName = false;		
+		for (String str : pathNames) {
+			if (filePath.indexOf(str) >= 0) {
+				containingName = true;
+				break;
+			}
+		}
+		
+		return containingName;
+
+	}
+	
 }