diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Archive.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Archive.java
index 4a5bf1c..b886be8 100644
--- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Archive.java
+++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/Archive.java
@@ -51,7 +51,6 @@
 import java.util.Map;
 import java.text.MessageFormat;
 
-import org.apache.commons.compress.archivers.ArchiveEntry;
 import org.apache.commons.compress.archivers.ArchiveOutputStream;
 import org.apache.commons.compress.archivers.tar.TarArchiveEntry;
 import org.apache.commons.compress.archivers.tar.TarArchiveOutputStream;
@@ -129,12 +128,10 @@
 	static {
 		Map<Format, Archiver> fmts = new EnumMap<Format, Archiver>(Format.class);
 		fmts.put(Format.ZIP, new Archiver() {
-			@Override
 			public ArchiveOutputStream createArchiveOutputStream(OutputStream s) {
 				return new ZipArchiveOutputStream(s);
 			}
 
-			@Override
 			public void putEntry(String path, FileMode mode, //
 					ObjectLoader loader, ArchiveOutputStream out) //
 					throws IOException {
@@ -154,12 +151,10 @@
 			}
 		});
 		fmts.put(Format.TAR, new Archiver() {
-			@Override
 			public ArchiveOutputStream createArchiveOutputStream(OutputStream s) {
 				return new TarArchiveOutputStream(s);
 			}
 
-			@Override
 			public void putEntry(String path, FileMode mode, //
 					ObjectLoader loader, ArchiveOutputStream out) //
 					throws IOException {
