前面两篇文章:

新建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.0\conf\tomcat-users.xml

  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:8080\manager

tomcat的管理界面登录如下:

修改下maven的配置文件

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

maven\conf\settings.xml

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

  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

  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错误
  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>
  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中的更多相关文章

  1. MyEclipse使用总结——Maven项目如何启动运行发布到tomcat中[转]

    前面两篇文章: 新建maven框架的web项目 以及 将原有项目改成maven框架 之后,我们已经有了maven的项目 那么 maven项目到底怎么启动呢 如果我们直接在myeclipse中按以前的启 ...

  2. 菜鸟教程之工具使用(六)——让Maven项目直接在eclipse内部的Tomcat中运行

    Hello,大家好,好久不见!最近终于安定下来了,可以静下心来写东西了.先写篇简单的,找找感觉.工具系列的本身就比较简单,没什么技术含量.因为说到底,工具只是辅助我们工作的,知道怎么用,然后剩下的就是 ...

  3. 【转】Maven项目中将配置文件打包到jar包中

    参考博客:http://blog.csdn.net/ciedecem/article/details/10382275 问题: 项目中需要用到从文件中加载json数据,如图放在conf目录下. 程序中 ...

  4. maven(三):maven项目结构及其运行机制

    在上一篇中讲了如何创建maven项目,现在回到那个项目 项目结构 src/main/java:java代码目录 src/main/resources:资源目录,比如spring.xml文件,prope ...

  5. Java全栈程序员之06:IDEA中MAVEN项目依赖及运行

    MAVEN已经成为事实上的企业项目开发中的项目类型.无论是IDEA还是Eclipse,都已经默认支持创建MAVEN项目.严格意义上来说,MAVEN不是一种新的JavaEE项目类型.它凌驾于所以的项目类 ...

  6. Gitlab+Jenkins学习之路(八)之发布maven项目及按版本发布

    一.什么是Maven maven是一个项目管理和综合工具.Maven提供给开发人员构建一个完整的生命周期框架. 开发团队可以自动完成该项目的基础设施建设,Maven使用标准的目录结构和默认构建生命周期 ...

  7. Maven项目Eclipse启动时报错: java.lang.ClassNotFoundException: org.springframework.web.util.IntrospectorCleanupListener

    Eclipse中启动Maven项目时报如下错误: 严重: Error configuring application listener of class org.springframework.web ...

  8. Java Web 项目发布到Tomcat中三种部署方法

    第一种方法:在tomcat中的conf目录中,在server.xml中的,节点中添加: <Context path="/" docBase="E:\TOMCAT\a ...

  9. 转:Java Web 项目发布到Tomcat中三种部署方法

    首先整理项目文件,文件内包含jsp.js等和class编译后的文件及lib包,如: 第一种方法:在tomcat中的conf目录中,在server.xml中的,<host/>节点中添加:   ...

随机推荐

  1. Workflow Builder 2.6.3 Certified on Windows 10 for EBS 12.x

    By Steven Chan - EBS-Oracle on May 17, 2016 Workflow Builder 2.6.3 is now certified on Windows 10 de ...

  2. Spring 依赖注入(一、注入方式)

    Spring是一个依赖注入(控制反转)的框架,那么依赖注入(标控制反转)表现在那些地方了? 即:一个类中的属性(其他对象)不再需要手动new或者通过工厂方法进行创建,而是Spring容器在属性被使用的 ...

  3. Sturts2 三种开发模式 (转)

    1.实现与 Servlet API的交互struts2中提供了Map类型的request.session与application,可以从ActionContext对象中获得.ActionContext ...

  4. OC-文件操作

    一.归档NSKeyedArchiver========================== 1.第一种方式:存储一种数据.===================== //归档 //第一种写法 //对象 ...

  5. => 应用在js回调函数中

    => 可以简化以前的回调函数的调用,具体来说: 今后,几乎所有的回调函数都可用箭头函数简化 比如: 1. 所有回调函数都可: 去function改=> 2. 如果函数体只有一句话: 可省略 ...

  6. Windows GVLK密钥对照表(KMS激活专用

    以下key来源于微软官网:https://technet.microsoft.com/en-us/library/jj612867.aspx Windows Server 2016 操作系统 KMS激 ...

  7. 微软原版WINDOWS10-LTSB-X64位操作系统的全新安装与优化

    原版WINDOWS10_LTSB_X64位操作系统,安装U盘的制作 1.在一台能正常运行的电脑上,下载原版WINDOWS10_LTSB_X64位操作系统镜像(ISO)文件: 2.运行UltraISO. ...

  8. Mac OS X显示隐藏文件命令

    defaults write com.apple.finder AppleShowAllFiles Yes && killall Finder //显示隐藏文件 defaults wr ...

  9. fn project 试用之后的几个问题的解答

    今天试用fnproject  之后自己有些思考,后面继续解决   1. 目前测试是强依赖 dockerhub 的,实际可能不是很方便 2. 如何与k8s .mesos.docker swarm  集成 ...

  10. gitlab Failed to register this runner. Perhaps you are having network problems runner 注册失败问题解决

    1. 低版本安装地址 https://gitlab-ci-multi-runner-downloads.s3.amazonaws.com/v1.11.2/index.html   2. 使用 yum ...