2016-12-08 71 views
0

我在我的微服務核心項目如下控制器:春天開機RestController不起作用

package com.XYZ.microservices.core.api.version; 

import org.springframework.beans.factory.annotation.Autowired; 
import org.springframework.http.MediaType; 
import org.springframework.web.bind.annotation.RequestMapping; 
import org.springframework.web.bind.annotation.RequestMethod; 
import org.springframework.web.bind.annotation.RestController; 

@RestController 
@RequestMapping("/version") 
public class VersionController { 

    @Autowired 
    private VersionService versionService; 

    @RequestMapping(method = RequestMethod.GET, produces = {MediaType.APPLICATION_JSON_VALUE}) 
    public Version getVersion() { 
     return versionService.getVersion(); 
    } 
} 

我有另外一個項目叫做產品服務。我進口微服務核心產品的服務是這樣的:像這樣

dependencies { 
     compile("com.XYZ:microservices-core:1.0.0-RELEASE") 
     ... 
} 

現在,我初始化產品服務應用:

@SpringBootApplication 
public class ProductServiceApplication { 

    public static void main(String[] args) { 
     SpringApplication.run(ProductServiceApplication.class, args); 
    } 
} 

在微服務核心的類是產品 - 可服務。但是當我運行產品服務時,我無法獲取localhost:8080 /版本。有人可以幫忙嗎?

+0

什麼是你所得到的錯誤? 404? – developer

+0

是的,whitelabel錯誤頁面 – riship89

+0

您可以添加啓動應用程序時在輸出中看到的彈簧軌跡嗎? – Nico

回答

1

我的猜測是你的主應用程序類包與控制器類不在同一個包中。

添加ComponentScan註釋你的主類,以掃描所有子包組件:

@SpringBootApplication 
@ComponentScan({"com.XYZ.microservices.core"}) 
public class ProductServiceApplication { 

    public static void main(String[] args) { 
     SpringApplication.run(ProductServiceApplication.class, args); 
    } 
} 
+0

就是這樣。先生非常感謝您! :) – riship89