当前位置: 移动技术网 > IT编程>开发语言>Java > eclipse springboot工程打war包方法及再Tomcat中运行的方法

eclipse springboot工程打war包方法及再Tomcat中运行的方法

2019年08月27日  | 移动技术网IT编程  | 我要评论

一, eclipse springboot打war包

1. 配置pom.xml文件

<packaging>war</packaging>

<!-- 配置servlet,打war包时放开 -->
<dependency> 
    <groupid>javax.servlet</groupid> 
    <artifactid>javax.servlet-api</artifactid> 
    <scope>provided</scope> 
</dependency>

 

<!-- 移除嵌入式tomcat插件, 打war包时放开 -->
<exclusions> 
    <exclusion>                 
            <groupid>org.springframework.boot</groupid> 
        <artifactid>spring-boot-starter-tomcat</artifactid> 
    </exclusion> 
</exclusions>    

<resources>
    <!-- 打包时将页面文件拷贝到meta-inf目录下 -->
    <resource>
        <!-- 指定resources插件处理哪个目录下的资源文件 -->
        <directory>src/main/webapp</directory>
        <!--注意此次必须要放在此目录下才能被访问到 -->
        <targetpath>meta-inf/resources</targetpath>
        <includes>
        <include>**/**</include>
        </includes>
    </resource> 
    <resource>
        <directory>src/main/resources</directory>
        <includes>
            <include>**/**</include>
        </includes>
        <filtering>false</filtering>
    </resource>
    <resource>
        <directory>src/main/java</directory>
        <excludes>
            <exclude>**/*.java</exclude>
        </excludes>
    </resource>
</resources>        

2. 修改springboot启动类, 添加@enablescheduling注解, 继承springbootservletinitializer类, 新增configure方法

@enablescheduling
public class demoapplication extends springbootservletinitializer{

    public static void main(string[] args) {
        springapplication.run(demoapplication.class, args);
    }
    /**
     *新增此方法
     */
     @override
    protected springapplicationbuilder configure(springapplicationbuilder builder) {
       // 注意这里要指向原先用main方法执行的application启动类
       return builder.sources(demoapplication .class);
    }
}

3. 修改项目maven

  右键项目properties

4. 右键项目 run as --> maven clean

5. 右键项目 run as --> maven build...

6. main选项卡, goals中填写  package, 勾选skip tests

7. jre选项卡, 这里要选择jdk 不能用jre, 先apply 再 run

eclipse中jre默认没有配置jdk的小伙伴可以这么选

 8. targer中找到war包

 

二, war包在tomcat中运行

1. 讲war包放在tomcat的webapps文件夹下

2. 修改conf文件夹下的server.xml文件

在<host>中添加<context>, 因为在tomcat中运行时需要在路径中加入项目名(每一个地址都要加), 所以直接把tomcat的默认路径改为本项目的路径

笔者尝试过其他的办法, 但是都不太好用, 朋友们如果有更好的办法欢迎留言, 谢谢!

<!-- 修改tomcat默认访问路径  -->
<context path=""  docbase="/项目名"  reloadable="true" />

3. 启动tomcat

4. 访问项目

 

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网