导读
首先说说自己为啥要用maven管理项目,一个直接的原因是:我在自己电脑上开发web项目,每次部署到服务器上时都要经历如下步骤:
- 首先在Eclipse里将项目打包成war包
- 将服务器上原来的项目文件夹删掉
cd /var/lib/tomcat7/webapps sudo rm XXX.war sudo rm -rf XXX
- 将war包传到服务器上,比如用pscp命令上传
pscp -pw "xxx" XXX.war username@ip:/var/lib/tomcat7/webapps
- 重启tomcat
sudo service tomcat7 restart
每次都这些步骤,非常烦人,
maven使用问题小记
1:maven配置文件pom.xml里的tomcat插件一般像下面这样配置:
<pluginManagement> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.1</version> <configuration> <url>http://127.0.0.1:8880/manager</url> <server>tomcat6</server> <path>/shenjianxz</path> <username>admin</username> <password>admin</password> </configuration></plugin>
</plugins>
</pluginManagement>注:我这里使用的是最新的版本apache-tomcat-6.0.36, 弄了大半天一直无法发布(造着别人的教程做),我把后面的html去掉居然行了, 如果换成apache-tomcat-6.0.10则无法正常发布;提示的异常内容是: Cannot invoke Tomcat manager: Server rened HTTP response code: 403 for URL. 6.0.1就得后面加manager/html,不知道为什么!!在这里写了账号和 密码 可以不必须在maven的配置文件settings.xml里配置了 我们还想要tomcat-users.xml中配置 <tomcat-users> <role rolename="manager-gui"/> <role rolename="manager-script"/> <user username="admin" password="admin" roles="manager-gui, manager-script"/> </tomcat-users> 2:开始运行自动部署命令时,一定要先启动tomcat。否则会报下列错误:
-
[INFO] [INFO] --- tomcat-maven-plugin:1.0:redeploy (default-cli) @ SSHMJ-FRANK --- [INFO] Deploying war to http://localhost:8880/
-
[INFO] ------------------------------------------------------------------------
-
[INFO] BUILD FAILURE [INFO] ------------------------------------------------------------------------
-
[INFO] Total time: 9.630s [INFO] Finished at: Tue Aug 31 16:35:52 CST 2010 [INFO] Final Memory: 6M/15M
-
[ERROR] Failed to execute goal org.codehaus.mojo:tomcat-maven-plugin:1.1: Cannot invoke Tomcat manager: Connection refused: connect -> [Help 1]
-
[ERROR] [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch. [ERROR] Re-run Maven using the -X switch to enable full debug logging.
-
其他错误我就举例了,网上有:如果想要换 tomcat7 就要换成
-
<pluginManagement> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.1</version> <configuration> <url>http://127.0.0.1:8880/manager</url> <server>tomcat6</server> <path>/shenjianxz</path> <username>admin</username> <password>admin</password> </configuration> </plugin> </plugins> </pluginManagement>
这里tomcat7我!!!!!我这里网络不好,就不演示了,提示我没该插件!!!!
注2:先启动本地tomcat 在用maven去发包到tomcat中~~~~才行(不能直接发布,不启动tomcat提前下,不爽。)