项目目录 first-app-demo
模型层:model
持久层:persistence
表示层:web

把 jar 修改成 pom,默认是 jar
pom.xml(first-app-demo)
模型层:model
持久层:persistence
表示层:web
web 依赖于 persistence ,persistence 依赖于 model
web Controller ->UserRepository -> User

jar打包方式

cd D:\JAVA_PROJECT\first-app-demo
在pom.xml(fisrt-app-demo)中加入 ,mainClass 复制接口 ,然后把下面这段话 剪贴 到 web 模块下的 pom.xml 里面

<build>
 <plugins>
 <plugin>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-maven-plugin</artifactId>
 -----
 <configuration>
 <mainClass>com.imooc.firstappdemo.FirstAppDemoApplication</mainClass>
 </configuration>
 ----
 </plugin>
 </plugins>
</build>

mvn -Dmaven.test.skip -U clean package
会显示如下::::
Building jar: D:\JAVA_PROJECT\first-app-demo\web\target\web-0.0.1-SNAPSHOT.jar
执行
cd web\target\
java -jar web-0.0.1-SNAPSHOT.jar

war打包方式

在web pom.xml中加入下面这句话,在 web 之后

war

并在web/src/main/下新建 webapp/WEB-INF/web.xml 文件
cd D:\JAVA_PROJECT\first-app-demo //回到项目根目录
mvn -Dmaven.test.skip -U clean package
会显示如下::::
Building war: D:\JAVA_PROJECT\first-app-demo\web\target\web-0.0.1-SNAPSHOT.war
cd web\target\
java -jar web-0.0.1-SNAPSHOT.jar

maven插件方式运行

cd D:\JAVA_PROJECT\first-app-demo
cd web
mvn -Dmaven.test.skip -U clean install
mvn spring-boot:run

war打包方式并在tomcat下运行

在web pom.xml中加入下面这句话,在 web 之后

war

并增加tomcat依赖

org.springframework.boot spring-boot-starter-tomcat

并在web/src/main/下新建 webapp/WEB-INF/web.xml 文件,不能为空

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
    <display-name>version</display-name>
</web-app>

修改启动文件,让其类集成 SpringBootServletInitializer,并重写configure方法

@SpringBootApplication

public class FirstAppDemoApplication extends SpringBootServletInitializer {

 @Override

 protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {

 return builder.sources(FirstAppDemoApplication.class);

 }

 public static void main(String[] args) {

 SpringApplication.run(FirstAppDemoApplication.class, args);

 }

}

cd D:\JAVA_PROJECT\first-app-demo //回到项目根目录
mvn -Dmaven.test.skip -U clean package
会显示如下::::
Building war: D:\JAVA_PROJECT\first-app-demo\web\target\web-0.0.1-SNAPSHOT.war
复制 web-0.0.1-SNAPSHOT.war 此文件到 tomcat/webapp下面
然后运行tomcat即可