zoukankan      html  css  js  c++  java
  • maven项目如何启动运行---发布到tomcat中

    maven项目如何启动运行---发布到tomcat中

    前面两篇文章:

    新建maven框架的web项目

    以及

    将原有项目改成maven框架

    之后,我们已经有了maven的项目

    那么

    maven项目到底怎么启动呢

    如果我们直接在myeclipse中按以前的启动方法是不行的。(详情下一篇文章会讲到:在myeclipse中启动maven项目)

    但是maven项目可以生成本地war包手动移到tomcat,也可以自动发布到本地,远程tomcat中。

    所以 我们就先尝试这两种方式:

    生成war包,手动运行

    对着项目右键,run as -----> Maven install 就会在本地生成war包

    找到相关目录:

    把这个包复制到我们本机安装的tomcat的webapp路径下:

    启动tomcat即可:

    启动完之后有一点要注意的:

    访问页面是路径跟发布出来的项目一样才行,即使web目录设置的是ipFilterM

    但这里要用:

    ipFilterM-0.0.1-SNAPSHOT

    否则404

    可能遇到的问题:

    maven生成的war包在tomcat下运行报错

    自动发布到本地,远程tomcat

    先修改下tomcat的配置文件

    ---安装目录下的tomcat-users.xml

    tomcat7.0conf omcat-users.xml

    [java] view plain copy
     
    1. <tomcat-users>  
    2.  <role rolename="manager-gui"/>  
    3.  <role rolename="manager" />  
    4.  <role rolename="manager-script"/>  
    5.  <user username="tomcat" password="tomcat" roles="manager-gui,manager,manager-script"/>  
    6. </tomcat-users>  

    如果已经有了相关用户信息信息,就不用添加了,但是权限要加上

     <role rolename="manager-gui"/>
     <role rolename="manager" />
     <role rolename="manager-script"/>

    manager-gui,manager,manager-script

    tomcat配置成功后可以在localhost:8080manager 

    tomcat的管理界面登录如下:

    修改下maven的配置文件

    ---安装目录下的settings.xml

    mavenconfsettings.xml

    找到servers修改如下,或者添加上: 

    [java] view plain copy
     
    1. <servers>  
    2.    <server>  
    3.      <id>mytomcat7</id>  
    4.      <username>tomcat</username>  
    5.      <password>tomcat</password>  
    6.    </server>  
    7.  </servers>  



    添加tomcat7-maven-plugin


    外部配置好了,现在配置下web工程中的pom,添加tomcat7-maven-plugin

    [java] view plain copy
     
    1. <build>  
    2.        <finalName>peopleDataShow</finalName>  
    3.        <plugins>  
    4.            <plugin>  
    5.                <groupId>org.apache.tomcat.maven</groupId>  
    6.                <artifactId>tomcat7-maven-plugin</artifactId>  
    7.                <version>2.2-SNAPSHOT</version>  
    8.                <configuration>  
    9.                    <path>/${project.build.finalName}</path>  
    10.                    <server>mytomcat7</server>  
    11.                    <!-- 这里是本地tomcat,如果是远程服务器可以改成对应的地址,实现自动部署-->  
    12.                    <url>http://localhost:8080/manager/text</url>  
    13.                 </configuration>  
    14.            </plugin>  
    15.        </plugins>  
    16.    </build>  

    也就是在build标签里添加 tomcat的plugin

    <finalName> 对应自己的项目名称

    添加插件配置

    -----不添加会报400 403错误
    [java] view plain copy
     
    1. <repositories>  
    2. <repository>  
    3. <id>people.apache.snapshots</id>  
    4. <url>http://repository.apache.org/content/groups/snapshots-group/</url>  
    5. <releases>  
    6. <enabled>false</enabled>  
    7. </releases>  
    8. <snapshots>  
    9. <enabled>true</enabled>  
    10. </snapshots>  
    11. </repository>  
    12. </repositories>  
    13. <pluginRepositories>  
    14. <pluginRepository>    
    15.    <id>apache.snapshots</id>    
    16.    <name>Apache Snapshots</name>    
    17.    <url>    
    18.        http://repository.apache.org/content/groups/snapshots-group/    
    19.    </url>    
    20.    <releases>    
    21.        <enabled>false</enabled>    
    22.    </releases>    
    23.    <snapshots>    
    24.        <enabled>true</enabled>    
    25.    </snapshots>    
    26. </pluginRepository>  
    27. </pluginRepositories>  



    启动tomcat7,执行maven build

    配置goals

    点击run后部署成功

    这时在tomcat的管理界面 或者 文件夹中都已经能看到这个项目了

    在myeclipse中直接运行

    我们直接通过myeclipse启动,有时候会报错,但是这种情况是能解决的。

    报错的原因

    默认情况下,maven的resources tomcat是不认的,直接使用以前的方法部署上去之后,classpath中一个配置文件也没有。


    我只想使用maven管理jar包,至于开发中部署到web服务器进行调试的工作,我还是想让myeclipse帮我完成,应该怎么配置,才能让部署过去之后,配置文件出现在WEB-INF/classes目录下?

    我们要检查一下添加到tomcat之后生成的目录下有没有resources中的文件

    检查发现,果然没有。

    那我们就要给resources文件夹设置一下发布路径

    对着项目右键
    Properties--->MyEclipse--->Deployment Assembly 把resource的文件夹输出路径设置成跟 src/main/java一样即可

    好了,这样我们就可以直接在myeclipse中直接启动项目和调试了。

    启动不报错,而且页面访问也可以用了。

    这时候项目的路径就是我们设置的web/root的路径,ipFilterM,区别 打war包放到tomcat中运行。

    <tomcat-users>
    3  <role rolename="manager-gui"/>
    4  <role rolename="manager" />
    5  <role rolename="manager-script"/>
    6  <user username="tomcat" password="tomcat" roles="manager-gui,manager,manager-script"/>
    7 </tomcat-users>
    [java] view plain copy
     
    1. <tomcat-users>  
    2.  <role rolename="manager-gui"/>  
    3.  <role rolename="manager" />  
    4.  <role rolename="manager-script"/>  
    5.  <user username="tomcat" password="tomcat" roles="manager-gui,manager,manager-script"/>  
    6. </tomcat-users>  

    参考:

    maven项目如何启动运行---发布到tomcat中 - CSDN博客
    http://blog.csdn.net/zzq900503/article/details/41249241

  • 相关阅读:
    live-server
    vue-插槽
    100%的背影
    Luogu P3243 菜肴制作
    CF512E Fox And Polygon
    BZOJ2523/LOJ2646 聪明的学生
    Luogu P3959 宝藏
    Luogu P2280 激光炸弹
    ACAG 0x02-8 非递归实现组合型枚举
    ACAG 0x02-4 费解的开关
  • 原文地址:https://www.cnblogs.com/Renyi-Fan/p/8148869.html
Copyright © 2011-2022 走看看