eclipse 3.4.2下にmyeclipse 7.5を掛けます。
myeclipse 7.5にはeclipse 3.4.2が含まれていますが、eclipseでmyeclipseをリンクするのが習慣になっていますので、やはり、comonディレクトリの下のpluginsとfeatureディレクトリcopyを自分のプラグインディレクトリに送ります。ここにはeclipse 3.4.2自分のpluginsとfeatureディレクトリが含まれていますが、同名のファイルをどうやって削除しますか?小さなプログラムを書けば大丈夫です。
import java.io.File;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class DuplicateDelete
{
public static void main(String[] args)
{
check("d:/java/myplugins/myeclipse/eclipse/plugins", "d:/java/eclipse/plugins");
check("d:/java/myplugins/myeclipse/eclipse/features", "d:/java/eclipse/features");
}
static void check(String myeclipsePath, String eclipsePath)
{
File myeclipse = new File(myeclipsePath);
File eclipse = new File(eclipsePath);
List<String> files1 = Arrays.asList(myeclipse.list());
List<String> files2 = Arrays.asList(eclipse.list());
Collections.sort(files1);
Collections.sort(files2);
int i = 0, j = 0;
while (true)
{
String name1 = files1.get(i);
String name2 = files2.get(j);
int a = name1.compareTo(name2);
if (a == 0)
{
remove(new File(myeclipsePath + "/" + name2));
i++;
j++;
}
else if (a < 0)
{
i++;
}
else
{
j++;
}
if (j == files2.size())
{
break;
}
}
}
static void remove(File directory)
{
if (!directory.delete())
{
File[] files = directory.listFiles();
for (int i = 0, n = files.length; i < n; i++)
{
if (files[i].isDirectory())
{
remove(files[i]);
}
else
{
files[i].delete();
}
}
}
directory.delete();
}
}