diff --git a/pom.xml b/pom.xml
index dbe0cf5..155400b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -32,7 +32,7 @@
   <groupId>org.apache.tomee.patch</groupId>
   <artifactId>tomee-patch-parent</artifactId>
   <packaging>pom</packaging>
-  <version>0.5-SNAPSHOT</version>
+  <version>0.6-SNAPSHOT</version>
 
   <name>Apache TomEE Patch Plugin</name>
   <description>Tools and Maven Plugin to help complete the javax-to-jakarta bytecode transformation</description>
diff --git a/tomee-patch-core/pom.xml b/tomee-patch-core/pom.xml
index 7420e27..00d13a8 100644
--- a/tomee-patch-core/pom.xml
+++ b/tomee-patch-core/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.tomee.patch</groupId>
     <artifactId>tomee-patch-parent</artifactId>
-    <version>0.5-SNAPSHOT</version>
+    <version>0.6-SNAPSHOT</version>
   </parent>
 
   <artifactId>tomee-patch-core</artifactId>
diff --git a/tomee-patch-core/src/main/java/org/apache/tomee/patch/core/Clazz.java b/tomee-patch-core/src/main/java/org/apache/tomee/patch/core/Clazz.java
index 9053913..f60370a 100644
--- a/tomee-patch-core/src/main/java/org/apache/tomee/patch/core/Clazz.java
+++ b/tomee-patch-core/src/main/java/org/apache/tomee/patch/core/Clazz.java
@@ -27,9 +27,9 @@
     private int applied;
 
     public Clazz(final String name, final File file) {
-        this.name = name;
-        this.prefix = name.replaceAll("\\.class$", "");
-        this.packge = asPackage(name);
+        this.name = name.replace("\\", "/");
+        this.prefix = this.name.replaceAll("\\.class$", "");
+        this.packge = asPackage(this.name);
         this.file = file;
     }
 
diff --git a/tomee-patch-core/src/test/java/org/apache/tomee/patch/core/ZipToTarTest.java b/tomee-patch-core/src/test/java/org/apache/tomee/patch/core/ZipToTarTest.java
index 13bca8f..b8a0c1a 100644
--- a/tomee-patch-core/src/test/java/org/apache/tomee/patch/core/ZipToTarTest.java
+++ b/tomee-patch-core/src/test/java/org/apache/tomee/patch/core/ZipToTarTest.java
@@ -57,12 +57,13 @@
             }
         }
 
+        String lineSeperator = System.getProperty("line.separator");
         assertEquals("" +
-                "14 33188 index.txt\n" +
-                "6 33188 color/red/crimson.txt\n" +
-                "6 493 color/blue/navy.sh\n" +
-                "6 33188 color/red/ruby.txt\n" +
-                "6 33188 color/green/forest.txt\n", out.toString());
+                "14 33188 index.txt" + lineSeperator +
+                "6 33188 color/red/crimson.txt" + lineSeperator +
+                "6 493 color/blue/navy.sh" + lineSeperator +
+                "6 33188 color/red/ruby.txt" + lineSeperator +
+                "6 33188 color/green/forest.txt" + lineSeperator, out.toString());
     }
 
 }
diff --git a/tomee-patch-plugin/pom.xml b/tomee-patch-plugin/pom.xml
index 076b4c3..740d359 100644
--- a/tomee-patch-plugin/pom.xml
+++ b/tomee-patch-plugin/pom.xml
@@ -25,7 +25,7 @@
   <parent>
     <groupId>org.apache.tomee.patch</groupId>
     <artifactId>tomee-patch-parent</artifactId>
-    <version>0.5-SNAPSHOT</version>
+    <version>0.6-SNAPSHOT</version>
   </parent>
 
   <artifactId>tomee-patch-plugin</artifactId>
