diff --git a/sigil/eclipse/core/sigil.properties b/sigil/eclipse/core/sigil.properties
index e9689e1..42e5b89 100644
--- a/sigil/eclipse/core/sigil.properties
+++ b/sigil/eclipse/core/sigil.properties
@@ -38,8 +38,9 @@
 	org.apache.felix.sigil.common.model.eclipse, \
 	org.apache.felix.sigil.common.model.osgi, \
 	org.apache.felix.sigil.common.osgi, \
-	org.apache.felix.sigil.common.progress;version=0.9.0, \
+	org.apache.felix.sigil.common.progress, \
 	org.apache.felix.sigil.common.repository, \
+	org.apache.felix.sigil.common.util, \
 	org.apache.felix.sigil.eclipse, \
 	org.apache.felix.sigil.eclipse.install, \
 	org.apache.felix.sigil.eclipse.job, \
diff --git a/sigil/eclipse/core/src/org/apache/felix/sigil/eclipse/internal/repository/eclipse/OSGiInstallRepository.java b/sigil/eclipse/core/src/org/apache/felix/sigil/eclipse/internal/repository/eclipse/OSGiInstallRepository.java
index 79c4f12..c479fa2 100644
--- a/sigil/eclipse/core/src/org/apache/felix/sigil/eclipse/internal/repository/eclipse/OSGiInstallRepository.java
+++ b/sigil/eclipse/core/src/org/apache/felix/sigil/eclipse/internal/repository/eclipse/OSGiInstallRepository.java
@@ -26,7 +26,6 @@
 import java.util.List;
 import java.util.Map;
 import java.util.jar.JarFile;
-import java.util.jar.Manifest;
 
 import org.apache.felix.sigil.common.core.BldCore;
 import org.apache.felix.sigil.common.model.ModelElementFactory;
@@ -35,6 +34,7 @@
 import org.apache.felix.sigil.common.model.osgi.IBundleModelElement;
 import org.apache.felix.sigil.common.repository.AbstractBundleRepository;
 import org.apache.felix.sigil.common.repository.IRepositoryVisitor;
+import org.apache.felix.sigil.common.util.ManifestUtil;
 import org.apache.felix.sigil.eclipse.SigilCore;
 import org.apache.felix.sigil.eclipse.install.IOSGiInstall;
 import org.eclipse.core.runtime.IPath;
@@ -106,8 +106,8 @@
         JarFile jar = null;
         try
         {
-            jar = new JarFile(f);
-            ISigilBundle bundle = buildBundle(jar.getManifest(), f);
+            jar = new JarFile(f, false);
+            ISigilBundle bundle = buildBundle(jar, f);
             if (bundle != null)
             {
                 bundle.setLocation(f);
@@ -145,9 +145,9 @@
         }
     }
 
-    private ISigilBundle buildBundle(Manifest manifest, File f)
+    private ISigilBundle buildBundle(JarFile jar, File f) throws IOException
     {
-        IBundleModelElement info = buildBundleModelElement(manifest);
+        IBundleModelElement info = ManifestUtil.buildBundleModelElement(jar);
 
         ISigilBundle bundle = null;
 
