使用Maven创建Springboot太麻烦了,那么如何更快创建Springboot呢?答案就是spring initializr。
启动IDEA,new project,在左侧选择Spring Initializr,配置基础信息:
Next之后,选择web支持
创建完成后,项目目录如下:
很好,自动帮我们创建了resources目录下的static、templates文件和application.properties,并且也有入口类Myspringboot02Application.java,但是好像有个问题,没有pom文件。
再来一次,修改了下创建时的信息,勾选了maven
好的,这次有pom文件了:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.0</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.imooc</groupId>
<artifactId>myspringboot02</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>myspringboot02</name>
<description>myspringboot02</description>
<properties>
<java.version>17</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
这里把项目01中的依赖parents、web、lpugin都引入了,且引入了test,但是报错了,
显示 jar包引入依赖3.1.0和test失败,找了下原因可能是maven配置不对,修改一下setting里的maven选项,将地址改为本地地址:
成功解决。
接下来跟项目01一样,在java的项目文件下,创建controller文件,创建MyController类,
package com.imooc.myspringboot02.controller;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
public class MyController {
@RequestMapping("/out")
@ResponseBody
public String out() {
return "success";
}
}
启动入口类Myspringboot02Application,
失败,发现需要版本17,但是我之前选择了版本8,因为选择版本17报错不能创建,找一下原因,
将这里改成一致,发现还是不行。查看一下project structure
发现不一致。试一下在pom文件将java版本改成1.8,刷新一下,把上述提到的setting,structure,全部改成1.8的版本。很好,解决了,但是出现了新的问题:
找了下是版本问题,将pom文件里的spring降低版本, 将3.1.0改为2.0.1
刷新maven,出现新问题:
这好像是镜像问题,让我找找。很奇怪,网上有人说是版本问题?又是降低版本,不管这个问题,直接启动入口类,成功了,漂亮!
浏览器输入localhost:8080/out,输出success。好的,艰难的创建spring工程再次完成。
总结下来,spring initializr确实比项目01中的maven方法更简单。