在Heroku上部署应用程序时“解析模板时出错”

时间:2016-07-05 09:24:53

标签: java spring maven heroku

这是我的项目结构:

├ pom.xml
├ Procfile
├ src
│  ├─ main
│  │   ├ java
│  │   │   └ spring
│  │   │       └ tests
│  │   │           ├ Application.java
│  │   │           └ GreetingController.java
│  │   └ resources
│  │       └ templates
│  │           └ index.html

Application是一个简单的SpringApplication,其中包含运行它的主要方法:

SpringApplication.run(Application.class, args);

GreetingController包含:

@CrossOrigin
@RequestMapping(value = "/", method = RequestMethod.GET)
public String index() {
    return "index";
}

使用maven构建项目时,在本地运行

java -Dserver.port=8080 -jar  target/*.jar

一切按预期工作,并加载index模板。但是,当我将其部署到Heroku时,我得到:

TemplateInputException: Error resolving template "index"

我的Procfile非常简单:

web: java -Dserver.port=$PORT -jar  target/*.jar

为什么它在本地工作正常但无法在Heroku上加载? (我跟着几乎所有相关的Stack Overflow问题,其中没有一个能为我工作)。

1 个答案:

答案 0 :(得分:0)

问题出在我的index.html文件中。我有:

<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>

出于某种原因,它在本地工作,但在从Heruko运行时抛出异常。解决方案正在将http更改为https

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
                 ↑