diff --git a/contractgen/src/main/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGenerator.java b/contractgen/src/main/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGenerator.java
index c899f2f..49dd5b9 100755
--- a/contractgen/src/main/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGenerator.java
+++ b/contractgen/src/main/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGenerator.java
@@ -45,6 +45,8 @@
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import javax.ws.rs.Path;
+
 public class DefaultContractsGenerator implements ContractsGenerator {
 
   private static Logger LOGGER = LoggerFactory.getLogger(DefaultContractsGenerator.class);
@@ -131,7 +133,8 @@
         String swaggerString = SwaggerUtils.swaggerToString(generator.generate());
 
         File outputFile = new File(
-            outputDir + File.separator + loadClass.getSimpleName() + contractfileType.getFileSuffix());
+            outputDir + File.separator + loadClass.getSimpleName() + contractfileType
+                .getFileSuffix());
 
         if (!outputFile.exists()) {
           if (!outputFile.getParentFile().exists()) {
@@ -176,6 +179,10 @@
       return true;
     }
 
+    Path pathAnnotation = loadClass.getAnnotation(Path.class);
+    if (pathAnnotation != null) {
+      return true;
+    }
     return false;
   }
 
diff --git a/contractgen/src/test/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGeneratorTest.java b/contractgen/src/test/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGeneratorTest.java
index f9f5ac7..d907929 100644
--- a/contractgen/src/test/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGeneratorTest.java
+++ b/contractgen/src/test/java/org/apache/servicecomb/toolkit/contractgen/DefaultContractsGeneratorTest.java
@@ -37,6 +37,7 @@
 import java.util.Map;
 import java.util.concurrent.TimeoutException;
 
+import javax.ws.rs.Path;
 import org.apache.maven.artifact.DependencyResolutionRequiredException;
 import org.apache.maven.plugin.testing.resources.TestResources;
 import org.apache.maven.project.MavenProject;
@@ -147,6 +148,9 @@
 
     mockClass = contractTestUtil.putAnnotationToClass("TestRequestMapping", RequestMapping.class);
     assertThat(method.invoke("TestRequestMapping", mockClass), is(true));
+
+    mockClass = contractTestUtil.putAnnotationToClass("TestPath", Path.class);
+    assertThat(method.invoke("TestPath", mockClass), is(true));
   }
 
   @Test
