diff --git a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java
index f66716e..d48f372 100644
--- a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java
+++ b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/OBRAriesResolver.java
@@ -59,7 +59,7 @@
 import org.w3c.dom.Document;
 
 /**
- * @version $Rev: 964138 $ $Date: 2010-07-14 20:03:40 +0100 (Wed, 14 Jul 2010) $
+ * @version $Rev$ $Date$
  */
 public class OBRAriesResolver implements AriesApplicationResolver
 {
diff --git a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/MapToDictionary.java b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/MapToDictionary.java
index 7ec68a5..3e32b0d 100644
--- a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/MapToDictionary.java
+++ b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/MapToDictionary.java
@@ -26,7 +26,7 @@
 import java.util.Map;
 
 /**
- * @version $Rev: 911397 $ $Date: 2010-02-18 13:41:27 +0000 (Thu, 18 Feb 2010) $
+ * @version $Rev$ $Date$
  */
 public class MapToDictionary extends Dictionary
 {
diff --git a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/OBRBundleInfo.java b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/OBRBundleInfo.java
index ca7ef7d..b9c2226 100644
--- a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/OBRBundleInfo.java
+++ b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/OBRBundleInfo.java
@@ -27,7 +27,7 @@
 import java.util.Set;
 
 /**
- * @version $Rev: 964138 $ $Date: 2010-07-14 20:03:40 +0100 (Wed, 14 Jul 2010) $
+ * @version $Rev$ $Date$
  */
 public class OBRBundleInfo implements BundleInfo
 {
diff --git a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java
index 4150a53..97ba9c4 100644
--- a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java
+++ b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/RequirementImpl.java
@@ -25,7 +25,7 @@
 import org.apache.felix.bundlerepository.Requirement;
 
 /**
- * @version $Rev: 954793 $ $Date: 2010-06-15 11:28:34 +0100 (Tue, 15 Jun 2010) $
+ * @version $Rev$ $Date$
  */
 public class RequirementImpl implements Requirement
 {
diff --git a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/ResourceWrapper.java b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/ResourceWrapper.java
index eead062..dfa0090 100644
--- a/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/ResourceWrapper.java
+++ b/application-obr-resolver/src/main/java/org/apache/aries/application/resolver/obr/impl/ResourceWrapper.java
@@ -27,7 +27,7 @@
 import org.osgi.framework.Version;
 
 /**
- * @version $Rev: 964138 $ $Date: 2010-07-14 20:03:40 +0100 (Wed, 14 Jul 2010) $
+ * @version $Rev$ $Date$
  */
 public class ResourceWrapper implements Resource {
 
