温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

springboot web项目打jar或者war包并运行的实现

发布时间:2020-10-12 03:36:23 来源:脚本之家 阅读:272 作者:老焦沉淀淀 栏目:编程语言

(一)springboot web项目打jar包

1、打包

两种打包方式

maven命令打包

切换目录到工程根下,pom.xml所在位置,运行maven的打包命令

mvn clean package -Dmaven.test.skip=true

IDEA 工具执行maven任务打包

springboot web项目打jar或者war包并运行的实现

会在xxx项目模块下/target目录下生成xxx-0.0.1-SNAPSHOT.jar

2、运行jar包

启动运行(切换目录到target下,执行命令)

F:\Java\idea-workspace\shixun02\web1>cd springboot1
F:\Java\idea-workspace\shixun02\web1\springboot1>cd target
F:\Java\idea-workspace\shixun02\web1\springboot1\target>java -jar web1-0.0.1-SNAPSHOT.jar

注意:如果启动springboot项目时,想自己设置启动服务器端口,命令如下:
java -jar web1-0.0.1-SNAPSHOT.jar --server.port=8081

(二)springboot web项目打war包,独立部署到tomcat运行

使用maven创建的springboot项目,默认是jar包,springboot还有自己带的tomcat。现在需要将项目打包,并部署到服务器tomcat下面,步骤如下:

1.修改pom.xml文件。将jar修改为war。

<groupId>com.youzhong</groupId>
  <artifactId>web1</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>war</packaging>

2.在pom.xml文件中将build节点中设置finalName为server.context-path中的路径。就是项目名称(打包的名称)。

 <build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
      </plugin>
    </plugins>
    <finalName>web1</finalName>
  </build>

3. 在spring-boot-starter-web依赖中移除tomcat模块。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <exclusions>
      <exclusion>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
      </exclusion>
    </exclusions>
  </dependency>

4. 添加servlet依赖。

<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
    <scope>provided</scope>
   </dependency>

5. 新建启动类。(需要和之前的启动类在同一级目录)

public class SpringBootStartApplication extends SpringBootServletInitializer {
  @Override
  protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
    // 注意这里要指向原先用main方法执行的Application启动类
    return builder.sources(Web1Application.class);
  }
}

注意:
Web1Application.class就是springboot生成的工程默认启动类
如:Web1Application.class即有@SpringBootApplication注解的主启动类 。

6. 使用mvn命令打包

mvn clean package -Dmaven.test.skip=true

或者

使用IDEA中的maven任务

springboot web项目打jar或者war包并运行的实现

7. 将war包拷贝部署到tomcat的webapps目录下面,启动tomcat并测试。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI