一.使用插件

tomcat 8.5

tomcat-users.xml中添加这一行就ok

<user username="admin" password="admin" roles="manager-script"/>

maven的settings.xml在servers标签中添加

<server>
<id>tomcatserver</id>
<username>admin</username>
<password>admin</password>
</server>

下图是maven配置文件位置

在pom.xml中添加(path是你的项目名,注意和web.xml中保持一致)

 <plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://127.0.0.1:8080/manager/text</url>
<server>tomcatserver</server>
<path>/usermodule</path>
<username>admin</username>
<password>admin</password>
</configuration>
</plugin>

接下来去tomcat的bin目录下启动tomcat,此步骤不做会出现cannot invoke tomcat manager,当然上面用户名,密码配错也会有这个异常,如果启动tomcat一闪而过,要么是jdk没配置对,要么就是tomcat

的server.xml中host标签中包含错误的context,删除即可,删除时不要把</host>删除

第一次运行:clean package tomcat7:deploy,去项目目录观察下是否把resources下的文件打包进去,如果没有添加以下配置

 <resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*</include>
</includes>
</resource>

如果使用了orm框架,比如mybatis,hibernate这种,src/main/java下通常会有XXX.xml的配置文件,想要被打包进去,还要添加

 <resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>

接下来执行tomcat7:redeploy(热部署)即可,如果添加了新的文件,执行clean package redeploy即可,这种方式日志输出在tomcat的命令框中,看起来不是很方便

声明:tomcat7:run启动了插件带的tomcat而不是你配置的tomcat

二.使用eclipse启动tomcat,加载maven web项目

tomcat 9

先添加好server,然后右键open(server已有项目,先remove后clean),把deploypath改成tomcat的webapps路径(serverpath测试了不修改也没什么问题),然后启动

此时去tomcat的webapp下,项目中没有只有包的结构没有class文件,导致一访问就出现class not found,还有一点几率出现Illegal access: this web application instance has been stopped already

顺序查看:

1.buildpath 中的source必须有java,resource

2.deployment assembly要加入maven依赖

3.project->build automaticlly开启

4.如果修改了project facts中的dynamic web module的版本,必须在web.xml中修改头部对应的version以及xsi:schemaLocation对应的尾部xsd版本

三.maven-war-plugin,maven-dependency-plugin

最初的想法,尝试用这两个插件直接打包到tomcat的webpps目录下,配置如下

 <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.</version>
<configuration>
<!--指定web.xml的路径 -->
<webXml>src\main\webapp\WEB-INF\web.xml</webXml>
<!--指定jsp、js、css的路劲 -->
<warSourceDirectory>src\main\webapp</warSourceDirectory>
</configuration>
</plugin> <!--打war包到指定的目录下 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.8</version>
<executions>
<execution>
<id>copy-war</id>
<phase>package</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}</artifactId>
<version>${project.version}</version>
<type>${project.packaging}</type>
</artifactItem>
</artifactItems>
<!-- <outputDirectory>${dist.console.war.dir}</outputDirectory> -->
<!--指定war包保存地址-->
<outputDirectory>D:\apache-tomcat-9.0.-eclipse\webapps</outputDirectory>
<includes>
<include>*.war</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>

通过这种方式执行clean package打包后会在tomcat的webapps下生成了wa包,接下来启动tomcat解压后访问

使用eclipse运行maven web项目 插件/非插件的更多相关文章

  1. eclipse构建及运行maven web项目

    1:环境 eclipse indigo, JDK1.6, maven 3.2.1, tomcat7.0.42 2:安装eclipse maven插件 m2eclipse 第一种方法:从网上下载m2ec ...

  2. eclipse 创建并运行maven web项目

    这两天想在eclipse上运行maven web项目,折腾了许久,总算success啦. 1,利用eclipse创建dynamic web project(eclipse需要安装m2eclipse). ...

  3. Eclipse 搭建 Maven Web项目

    第一步:安装JDK: 第二步:安装Eclipse: 第三步:安装tomcat7: 第四步:安装maven插件: 4.1 下载maven:http://maven.apache.org/download ...

  4. Eclipse创建Maven Web项目 + 测试覆盖率 + 常见问题(2015.07.14——湛耀)

    Eclipse创建Maven web项目: 到此,并没有创建好,接下来一步步解决问题: 问题:无法创建src/main/java目录 解决: 右键项目选择[properties] 点击[OK] 问题: ...

  5. eclipse创建maven web项目

    eclipse创建maven web项目: 1.安装eclipse maven插件 2.新建maven project选择webapp模板. 3.改造为maven文档结构. 4.添加项目的JAVAEE ...

  6. Java归去来第2集:利用Eclipse创建Maven Web项目

    一.前言 如果还不了解剧情,请返回第一集的剧情          Java归去来第1集:手动给Eclipse配置Maven环境 二.利用Eclipse创建Maven Web项目 选择File-New- ...

  7. eclipse 创建maven web项目

    参考:http://www.cnblogs.com/hongwz/p/5456616.html eclipse 创建maven web项目

  8. Eclipse创建Maven Web项目后更改Servlet版本

    Eclipse创建Maven Web项目后更改Servlet版本 1.场景基于Eclipse通过maven-archetype-webapp原型创建一个Web项目后,其默认Servlet版本是2.3, ...

  9. 解决使用eclipse创建maven web项目时报Could not resolve archetype的问题

    前两天重装了系统,今天想写一个项目的时候出现了点问题. 在使用eclipse创建maven web项目时,点Finish后报了Could not resolve archetype的问题. Could ...

随机推荐

  1. poj3261 后缀数组求重复k次可重叠的子串的最长长度

    Milk Patterns Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 13669   Accepted: 6041 Ca ...

  2. 单颗GPU计算能力太多、太贵?阿里云发布云上首个轻量级GPU实例

    摘要: 阿里云发布了国内首个公共云上的轻量级GPU异构计算产品——VGN5i实例,该实例打破了传统直通模式的局限,可以提供比单颗物理GPU更细粒度的服务,从而让客户以更低成本.更高弹性开展业务. 在硅 ...

  3. 应用中弹出 WiFi 提示框的方法

    如果 iOS 程序中用到了 WiFi,想有 WiFi 提示,只需要在 .plist 文件中加入如下 Key/Value 即可: 键名:ApplicationusesWi-Fi 值:YES 键名:SBU ...

  4. python while 循环结构

  5. 突破!阿里云CDN实现毫秒级全网刷新

    通常在某网站使用了CDN节点来实现内容分发加速后,当源站内容更新的时候,CDN刷新系统会通过提交刷新请求将CDN节点上的指定缓存内容强制过期.当用户访问的时候,CDN节点将回源获取最新内容返回给用户, ...

  6. @atcoder - AGC038F@ Two Permutations

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给定 N 与两个 0~N-1 的置换 P, Q. 现在你需要找到 ...

  7. Python里的迭代器

    迭代器(iterator)协议 · 在Python中,支持迭代器协议就是实现对象的__iter__()和__next__()方法. 1.__iter__()方法:返回迭代器对象本身: 2.__next ...

  8. 使用php函数ini_set()重新设置某个配置的设置值

    使用PHP的ini_set()函数 ini_set (PHP 4, PHP 5, PHP 7) ini_set — 为一个配置选项设置值 说明 string ini_set ( string $var ...

  9. phpstorm IDEA 双击Shift键会弹出 SearchEverywhere 对话框,如何取消这个功能

    https://blog.csdn.net/qq_27598243/article/details/80526352 解决方法:一:Open lib/resources.jar/idea/Platfo ...

  10. Python第三方包的egg info 是什么东西

    xxx.egg-info 一般与 xxx文件夹同时存在,一起来表示完整模块.