在Heroku Java spring-boot的最简配置中尝试HelloWorld

总结

尝试使用Heroku+Java+spring-boot构建一个能够在最短时间和最小配置下展示HelloWorld的环境,以便于启动新的Web服务。

能够做到的事情 zuò de shì

    Heroku上でのHelloWorld

大概需要多少时间完成这项任务?

三十分钟

事前所需之物

    • Java

 

    • Maven

 

    • git

 

    Herokuアカウント

在下面的文章中,只需要描述Heroku Account取得的介绍部分即可:
在以下文章中描述了如何通过Heroku Account取得Heroku账户。只需简单几步即可免费获取(只需要提供邮箱地址,无需注册信用卡信息)。请尝试使用免费的Heroku进行Web应用程序的发布。

创建Spring Boot环境

需要准备的文件有pom.xml和HelloController.java两个。

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://maven.apache.org/POM/4.0.0"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>sprin-boot-sample</groupId>
  <artifactId>sprin-boot-sample</artifactId>
  <version>1.0</version>
  <packaging>jar</packaging>

  <name>sprin-boot-sample</name>

  <properties>
    <java.version>1.8</java.version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  </properties>

  <parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.9.RELEASE</version>
  </parent>

  <dependencies>
    <dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <executions>
          <execution>
            <goals>
              <goal>build-info</goal>
            </goals>
            <configuration>
              <additionalProperties>
                <encoding.source>${project.build.sourceEncoding}</encoding.source>
                <encoding.reporting>${project.reporting.outputEncoding}</encoding.reporting>
                <java.source>${maven.compiler.source}</java.source>
                <java.target>${maven.compiler.target}</java.target>
              </additionalProperties>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
package com.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
@EnableAutoConfiguration
public class HelloController {

    @RequestMapping("/")
    @ResponseBody
    public String home() {
        return "Hello, World!";
    }

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

}

2. 准备适配Heroku环境的配置文件。

需要的文件有三个。
Procfile/system.properties/application.properties

web: java -jar target/sprin-boot-sample-1.0.jar
java.runtime.version=1.8
server.port=${PORT:5000}

在Heroku上不要上传文件的时候,请准备好.gitignore文件。

target

最终的构成如下所示。 de

{フォルダ}
│  .gitignore
│  pom.xml
│  Procfile
│  system.properties
│      
└─src
    └─main
        ├─java
        │  └─com
        │      └─example
        │              HelloController.java
        │              
        └─resources
                application.properties

4. 在本地的git仓库中进行提交

git init
git add .
git commit -m "first commit"

5. 部署到Heroku。

heroku login
heroku create
git push heroku master
heroku open

确认画面

image.png

以上 means “above” or “the above” in English. In Chinese, this can be paraphrased as “上述” shù).

印象

如果您拥有一个Heroku账户,您可以在30分钟内创建出一个Web服务的雏形,这一点非常重要。虽然这仅限于使用spring-boot构建的框架,但如果您逐步添加其他框架到这个雏形中,将更加方便。

广告
将在 10 秒后关闭
bannerAds