解決済み、下の投稿を参照Java:1つのjarファイルから別のjarファイルにフォルダをコピーする方法は?
Javaを使用して1つの.jarから別の.jarにファイルをコピーしたいとします。しかし、瓶のすべてのファイルがコピーされるわけではありません。私はサブフォルダを含むことができる1つの特定のフォルダをコピーするだけです。私はすでに別のjarファイルからファイルをコピーするコードを持っている:
public static void copyFiles(final File file) throws IOException {
final JarFile targetJar = new JarFile(file);
final JarOutputStream output = new JarOutputStream(new FileOutputStream(file));
final JarFile localJar = new JarFile(new File(JarEditor.class.getProtectionDomain().getCodeSource().getLocation().getFile()));
// WRAPPER_CONTENT is a String[] which contains all names of the files i want to copy
for (final String entryName : StringResource.WRAPPER_CONTENT) {
final JarEntry entryToCopy = localJar.getJarEntry(entryName);
final JarEntry targetEntry = new JarEntry(entryName);
output.putNextEntry(targetEntry);
final InputStream input = localJar.getInputStream(entryToCopy);
final byte[] buffer = new byte[10240];
int readByte = 0;
while ((readByte = input.read(buffer)) >= 0) {
output.write(buffer, 0, readByte);
}
}
output.flush();
output.close();
localJar.close();
targetJar.close();
}
現在、彼らの名前のハードコードされたリストを実行してファイルをコピーするイム。しかし、IDはより柔軟な方法を好み、私の瓶からリソースを追加したり削除したりすることができます。それらはすべて、jarファイル内に同じ親フォルダがあります。だから私はその1つのフォルダを通過し、それらのファイルだけをコピーするのだろうか?
また、言及する価値はありますが、コピーするすべてのファイルは、おそらく自分のコードを見ているので、私のランタイムが来ているjarファイルにあります。助けのための
おかげ
Baschdi