tomcat7-maven-plugin 需要配置吗

tomcat7-maven-plugin 需要配置吗,第1张

一、环境准备

我使用的环境是:Window 10、Tomcat 8.0.36、maven3、tomcat7-maven-plugin 2.2版本。

二、设置环境变量

安装Tomcat8.0.36和maven之后设置环境变量,Tomcat设置环境变量时,key为必须为CATALINA_HOME。

1.设置maven环境变量

MAVEN =D:\Program Files (x86)\JetBrains\IntelliJ IDEA 2016.1.3\plugins\maven\lib\maven3\bin

(我直接引用了InteljiIDEA中的maven)

2、设置TOMACAT环境变量

CATALINA_HOME=E:\tomcat\apache-tomcat-8.0.36

3、将他们添加到PATH中

PATH=%MAVEN%%CATALINA_HOME%\bin

三、在Tomcat中配置用户权限

在tomcat的配置文件tomcat_user.xml(%CATALINA_HOME%\conf\tomcat.user.xml)中的<tomcat-users >标签中添加

<role rolename="manager-gui"/><role rolename="manager-script"/><user username="username" password="password" roles="manager-gui,manager-script"/>

四、在Maven的settings.xml配置Server

在Maven的配置文件settings.xml(%MAVEN%\conf\settings.xml)中的<servers > 中加入

<server>

<id>tomcat8</id>

<username>username</username>

<password>password</password>

</server>

这里的username 、password就填我们在tomcat中配置的那个用户名,和密码

这里的设置的 id为 tomcat8 我们将在项目的 pom.xml中填写。

五、在项目的pom.xml中配置tomcat7-maven-plugin插件

在<build> 中引入插件:

<build>

<pluginManagement>

<plugins>

...<!-- 配置tomcat 插件 -->

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<version>2.2</version>

<configuration>

<url>http://localhost:8080/manager/text</url>

<server>tomcat8</server>

<path>/test</path>

<update>true</update>

</configuration>

</plugin>

</plugins>

</pluginManagement>

....

注意

1、这里的 <server>中填写的就是为们在%MAVEN%\conf\settings.xml配置中的那个id

即 tomcat8.

2、由于我用的tomcat8这里的<url>必须配置成 xxx/manager/text否则会部署不成功

3、由于部署时会下载一些东西最还是在 pom.xml 的<project >标签下加入以下代码:

<repositories>

<repository>

<id>people.apache.snapshots</id>

<url>

http://repository.apache.org/content/groups/snapshots-group/</url>

<releases>

<enabled>false</enabled>

</releases>

<snapshots>

<enabled>true</enabled>

</snapshots>

</repository>

</repositories>

<pluginRepositories>

<pluginRepository>

<id>apache.snapshots</id>

<name>Apache Snapshots</name>

<url>http://repository.apache.org/content/groups/snapshots-group/</url>

<releases>

<enabled>false</enabled>

</releases>

<snapshots>

<enabled>true</enabled>

</snapshots>

</pluginRepository>

</pluginRepositories>

六、deploy

1、开启tomcat

2、在pom.xml所在的目录执行 mvn tomcat7:deploy 命令部署项目。

七、遇到的问题

1、在Window系统下执行在执行 mvn tomcat7:undeploy时,会有残留在tomcat目录下

解决方法:在tomcat的配置文件context.xml中 的<Context >标签中添加属性:antiJARLocking=”true” antiResourceLocking=”true”

<Context antiJARLocking="true" antiResourceLocking="true">

这个来个实例最好了

<plugin>        <groupId>org.apache.tomcat.maven</groupId>        <artifactId>tomcat7-maven-plugin</artifactId>        <version>2.2</version>        <configuration>          <port>8080</port>          <path>/</path>          <uriEncoding>UTF-8</uriEncoding>        </configuration>      </plugin>

简要说明一下:

path  是访问应用的路径

port 是tomcat 的端口号

uriEncoding  URL按UTF-8进行编码,这样就解决了中文参数乱码。

配置就这么简单,基本搞掂,下面看看如何使用。

插件运行

如果Eclipse 安装了Maven插件,选 择pom.xml文件,击右键——>选择 Run As——>Maven build 。

如果是第一次运行,会d出下面对话框。在Goals框加加入以下命令: tomcat7:run

能,在maven启用tomcat有两种方式,一种是集成本地的tomcat,另一种是在pom.xml文件中插入tomcat插件,本人小白初学第一种方式运行成功后,开始实验第二种方式,运行后出现报错

原因是端口号有冲突,查找资料发现有三种方式修改,一种是关闭本地tomcat,这种是最简单方法,关闭后可以省去很多麻烦。

第二种是可以更改本地端口号

<Connector port="8080" protocol="HTTP/1.1"

connectionTimeout="20000"

redirectPort="8443" />

<!-- A "Connector" using the shared thread pool-->

<!--

就是本地tomcat的conf文件包下的server.xml文件夹中

但是修改后记得重启本地tomcat,否则无效。

第三种方法是在maven的pom.xml文件中添加指定端口代码

<plugins>

<!--tomcat插件-->

<plugin>

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<version>2.2</version>

<configuration>

<port>8081</port><!--修改端口号-->

<path>/</path>

</configuration>

</plugin>

</plugins>

我是用第三种方式,修改后刷新maven,再次启动tomcat7:run,生效。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/8011619.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-12
下一篇 2023-04-12

发表评论

登录后才能评论

评论列表(0条)

保存