2016-05-12 82 views
0

這是我第一次部署到heroku。我試圖用postgreSql項目部署Spring MVC。部署到Heroku時無法找到並加載主類HomeController?

當我第一次部署到heroku時,它說我錯過了Procfile。然後我加入了Procfile與文本就像例如Heroku的網站,看起來像這樣

「網站:java命令的目標/班:」目標/依賴/ *「的HomeController」

有是「HomeController」。這裏是HomeController.java裏面的東西

/** 
* Handles requests for the application home page. 
*/ 
@Controller 
public class HomeController { 

    private static final Logger logger = LoggerFactory.getLogger(HomeController.class); 

    /** 
    * Simply selects the home view to render by returning its name. 
    */ 
    @RequestMapping(value = "/", method = RequestMethod.GET) 
    public String home() { 

     return "home"; 
    } 

} 

這是這個控制器的直接根域到我的home.html。我有包裹就像「co.id.myproject.controller」在這裏我把我的「HomeController.java」

然後當我在heroku中運行我的應用程序,它將無法正常工作。然後我看着Heroku的日誌,帶命令行提示的CMD「Heroku的日誌」,我發現了一個錯誤消息說

「找不到或無法加載主類的HomeController」

我已經定義HomeController在Procfile中。我在這裏錯過了什麼?

回答

1

在這裏沒有main方法。你必須在Heroku的配置文件中用main方法指定類。您還必須在運行命令中指定該類的全限定名稱。

+0

該怎麼辦?因爲我的應用程序是Spring MVC。你能舉出春季mvc主要方法的例子嗎? –

+0

如果你不使用Spring Boot,那麼你可能需要一個Servlet容器。如果你正在部署一個WAR文件,你應該閱讀這篇文章https://devcenter.heroku.com/articles/war-deployment – codefinger

+0

我不使用Spring Boot,我不建立戰爭部署到heroku,我試過了,戰爭方法已經過時,我認爲,因爲不工作。所以我作爲git項目在我的應用程序的根,然後我推到heroku,因爲推是成功,我剛剛得到了錯誤 –

相關問題