Skip to content

Latest commit

 

History

History
224 lines (160 loc) · 10 KB

10.Installing-Spring-Boot.md

File metadata and controls

224 lines (160 loc) · 10 KB

10. Installing Spring Boot

Spring Boot 可以和经典的 Java 开发工具一起使用也可以和命令行工具一起使用。不管那种方式,你都需要 Java SDK v1.8 或者更新的版本。在你开始之前,你应该通过下面的命令检查下当前的JDK版本:

$ java -version

如果你是新加入 Java 开发或者你想尝试 Spring Boot,则你可能想先体验 Spring Boot CLI (命令行工具)。否则,继续阅读“经典”安装介绍。


10.1 Installation Instructions for the Java Developer

你可以像使用 Java 标准库一样使用 Spring Boot 。为此,请将适当的 spring-boot-*.jar 文件放在你的 classpath 。Spring Boot 不需要集成任何其它工具,所以你可以使用任何IDE或者文本编辑器。同样, Spring Boot 应用没有其它特别的地方,你可以像其它 Java 项目一样运行和调试它。

虽然你可以复制 Spring Boot 的 jar 包,但是我们通常还是建议你使用构建工具来提供依赖管理(例如 Maven 或 Gradle )。


10.1.1 Maven Installation

Spring Boot 兼容 Maven 3.2 及以上版本,如果你还没有安装Maven,可以看这篇介绍 maven.apache.org

⭐ 在许多操作系统上,Maven通过包管理器安装.如果你使用OSX Homebrew通过 brew install maven 。Ubuntu用户可以通过运行 sudo apt-get install maven 安装。使用 Chocolatey 的 Windows 用户可以通过管理员权限运行 choco install maven

Spring Boot 依赖 org.springframework.boot groupId 。通常,你的 Maven POM 文件继承 spring-boot-starter-parent 项目并且声明了一个以上 Starters 。Spring Boot 同时也提供了一个可选的 Maven Plugin 来创建可执行的 jar 。

一般 pom.xml 是下面这样的:

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

	<groupId>com.example</groupId>
	<artifactId>myproject</artifactId>
	<version>0.0.1-SNAPSHOT</version>

	<!-- Inherit defaults from Spring Boot -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.2.RELEASE</version>
	</parent>

	<!-- Add typical dependencies for a web application -->
	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
	</dependencies>

	<!-- Package as an executable jar -->
	<build>
		<plugins>
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
			</plugin>
		</plugins>
	</build>

</project>

spring-boot-starter-parent是使用Spring Boot的一种很好的方式。但是它并非适用于所有地方。有时你需要继承其它的parent POM,或者你不想使用默认的配置。在这些情况下Section 13.2.2, “Using Spring Boot without the Parent POM”提供了另一种通过import的方式。


10.1.2 Gradle Installation

Spring Boot 内嵌了 Gradle 4。如果你还没有安装Gradle,可以查看这篇介绍 gradle.org.

Spring Boot 的依赖可以通过 org.springframework.boot group 来声明。通常,你的项目依赖一个以上的 "Starters“ 。Spring Boot 提供了 Gradle plugin 来简化声明依赖和创建可执行 jar 。

Gradle Wrapper
Gradle Wrapper 提供了一个很好的方式来获取 Gradle 当你构建一个项目的时候.他是一个与代码一起提交来引导构建过程的小脚本和库。详情见 docs.gradle.org/4.2.1/userguide/gradle_wrapper.html .

下面是一个典型的 gradle.build 文件:

plugins {
	id 'org.springframework.boot' version '2.0.2.RELEASE'
	id 'java'
}


jar {
	baseName = 'myproject'
	version =  '0.0.1-SNAPSHOT'
}

repositories {
	jcenter()
}

dependencies {
	compile("org.springframework.boot:spring-boot-starter-web")
	testCompile("org.springframework.boot:spring-boot-starter-test")
}

10.2 Installing the Spring Boot CLI

Spring Boot CLI 是一个用来快速创建 Spring 原型的命令行工具。它允许运行 Groovy 脚本,意味着你可以使用少了很多模板语法的类 Java 风格的语法。

你不需要使用 CLI 来使用 Spring Boot,但它绝对是实现 Spring 应用程序的最快方法。


10.2.1 Manual Installation

你能从下面的软件仓库获取 Spring CLI :

snapshot distributions 同样可以.

下载下来后跟着 INSTALL.txt 的介绍进行操作。总的来说,有一个 spring 脚本( spring.bat Windows )在 .zip 文件的 /bin 目录下。同样,你可以使用 java -jar 来运行 .jar 文件(这个脚本可以帮你确定正确的设置了 classpath )。


10.2.2 Installation with SDKMAN!

SDKMAN!(The Software Development Kit Manager) 用来帮你管理不同版本的 SDKs ,包括 Groovy 和 Spring Boot CLI。从sdkman.io 获取 SDKMAN! 并且用以下命令来安装 Spring Boot :

$ sdk install springboot
$ spring --version
Spring Boot v2.0.2.RELEASE

如果你正在为 CLI 开发新特性,并且轻松的获得其版本,可以使用下面的命令:

$ sdk install springboot dev /path/to/spring-boot/spring-boot-cli/target/spring-boot-cli-2.0.2.RELEASE-bin/spring-2.0.2.RELEASE/
$ sdk default springboot dev
$ spring --version
Spring CLI v2.0.2.RELEASE

前面的命令安装了一个 dev 的本地 spring 实例,它指向你的构建地址,并且每次你重新构建 Spring Boot , spring 都会更新为最新。

你可以通过下面的命令来验证:

$ sdk ls springboot

================================================================================
Available Springboot Versions
================================================================================
> + dev
* 2.0.2.RELEASE

================================================================================
+ - local version
* - installed
> - currently in use
================================================================================

10.2.3 OSX Homebrew Installation

如果你的环境是Mac,并使用 Homebrew,想要安装 Spring Boot CLI 只需以下操作:

$ brew tap pivotal/tap
$ brew install springboot

Homebrew把 spring 安装在 /usr/local/bin 目录下.

如果该方案不可用,可能是因为你的 brew 版本太老了。你只需执行 brew update 并重试即可。


10.2.4 MacPorts Installation

如果你的环境是Mac,并使用 MacPorts ,想要安装 Spring Boot CLI 只需以下操作:

$ sudo port install spring-boot-cli

10.2.5 Command-line Completion

Spring Boot CLI 包含了 BASHzsh 的命令实现。你可以在任何 shell 中 source 脚本(也叫 spring ),或将它放到用户或系统范围内的 bash 初始化脚本里。在Debian中,所有的系统范围内的脚本都放在 /shell-completion/bash 目录下,并且当新的 shell 启动时自动执行。例如,你想手动的运行脚本,并且你已经安装了 SDKMAN! ,只需以下操作:

$ . ~/.sdkman/candidates/springboot/current/shell-completion/bash/spring
$ spring <HIT TAB HERE>
  grab  help  jar  run  test  version

如果你通过 Homebrew 或者 MacPorts 安装 Spring Boot CLI,命令行实现脚本会自动注册到你的 shell 。


10.2.6 Quick-start Spring CLI Example

你可以通过下面的 web 应用来验证你的安装。首先创建一个名叫 app.groovy 的文件,内容如下:

@RestController
class ThisWillActuallyRun {

	@RequestMapping("/")
	String home() {
		"Hello World!"
	}

}

然后通过脚本运行:

$ spring run app.groovy

第一次运行这个程序的时候会很慢,需要下载依赖。随后运行会快很多

通过浏览器访问 localhost:8080 你能看到以下输出:

Hello World!

10.3 Upgrading from an Earlier Version of Spring Boot

如果你从早期版本更新的 Spring Boot ,通过 “migration guide” on the project wiki 查看更新介绍。查看 “release notes” 来了解每个版本的特性。

想要升级一个已安装的 CLI ,你需要使用合适的包管理命令(例如 brew upgrade ),如果通过手动更新,查看 standard instructions ,并且记得更新你的 PATH 环境变量来移除旧版本的引用。