• 使用Tomcat Maven插件产生的疑惑


    使用Tomcat Maven插件产生的疑惑和后续开发遇到的问题

    在IDEA中使用本地Tomcat进行项目部署,相对来说步骤比较繁琐,所以我们需要一种更简便的方式来替换它,那就是直接使用Maven中的Tomcat插件来部署项目,具体的实现步骤,只需要两步,分别是:
    1.在pom.xml中添加Tomcat插件

    <build>
        <plugins>
        	<!--导入Tomcat插件 -->
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
            </plugin>
        </plugins>
    </build>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    2.使用Maven Helper插件快速启动项目,选中项目,右键–>Run Maven --> tomcat7:run
    在这里插入图片描述
    注意:
    在这里插入图片描述
    本文我就想说点最近一直困扰我
    使用Maven Tomcat插件,要想修改Tomcat的端口和访问路径,可以直接修改pom.xml

    <build>
        <plugins>
        	<!--Tomcat插件 -->
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                	<port>80</port><!--访问端口号 -->
                    <!--项目访问路径
    					未配置访问路径: http://localhost:80/brand-demo/a.html
    					配置/后访问路径: http://localhost:80/a.html
    					如果配置成 /hello,访问路径会变成什么?
    						答案: http://localhost:80/hello/a.html
    				-->
                    <path>/</path>
                </configuration>
            </plugin>
        </plugins>
    </build>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20

    当我们不设置port时tomcat会默认调用端口8080
    1.如下图我的疑惑,我运行maven项目后调用了8080的端口,而在我们的IDEA中的Tomcat Server Setting我们设置了HTTP端口为80,但是我们运行后我们的端口却变成了8080(由于我修改了Tomcat的访问端口为80,我以为运行maven时端口也为80),我查找了一下午,就是上面的pom.xml文件我们没有修改maven的访问端口。

    在这里插入图片描述

    在这里插入图片描述
    2.就是端口后面的虚拟目录问题我的项目名为branddemo,但是这里为brand-demo
    然后我就很疑惑为啥会这样,当我再一次查看pom.xml文件时看到这么一段代码:

     <groupId>com.itheima</groupId>
        <artifactId>brand-demo</artifactId>
        <version>1.0-SNAPSHOT</version>
        <packaging>war</packaging>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5

    我就想明白了,这是我在创建创建maven时项目名为branddemo,而maven的三个坐标中的项目名却设置为了brand-demo,从而产生了不同。(我用的是19年的IDEA)在后面的开发中我发现,如果不改一样名称的话在浏览器中会报出404路径报错。这时要么统一名称,要么改Deployment页面下Application context的路径,才能在解决浏览器中的404报错
    在这里插入图片描述

    下面是解决运行maven项目时会产生一个警告(平台编码的警告,没有报错!!!)

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    
    • 1
    • 2
    • 3

    这次就到这里,今天收获满满~~~~哈哈哈哈哈哈哈哈哈

  • 相关阅读:
    vue3.0新特性学习笔记
    精华推荐 | 深入浅出学习透析Nginx服务器的基本原理和配置指南「Keepalive性能优化实战篇」
    SystemVerilog-决策语句-case语句
    【单调栈】【概念讲解&&模板代码】
    学习如何使用最强大的 JavaScript 函数
    11.9 - 每日一题 - 408
    sparksql broadcast join opt
    ARM功耗管理之功耗数据与功耗收益评估
    JavaScript教程第五篇(作者原创)
    链表——反转链表
  • 原文地址:https://blog.csdn.net/qq_53037676/article/details/125492661