部署工程
添加tomcat插件支持
tomcat插件方式比原有eclipse配置tomcat server方式,部署启动要迅速很多,推荐使用。(在pom依赖中添加)
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<configuration>
<port>8081</port>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>
添加jetty插件支持
<!-- Maven Jetty Plugin -->
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<version>8.1.16.v20140903</version>
<configuration>
<!-- 每2秒的间隔扫描一次,实现热部署 -->
<scanIntervalSeconds>2</scanIntervalSeconds>
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>8081</port>
</connector>
</connectors>
</configuration>
</plugin>
注意:
热部署,就是在应用正在运行的时候升级软件,却不需要重新启动应用。对于Java应用程序来说,热部署就是在运行时更新Java类文件。
常见错误
创建时骨架报错
骨架非常脆弱,很容易自己就崩溃,遇到时把插件目录删除,重新下载即可。
D:\javaenv\mvn_repo\org\apache\maven\archetypes
注意从别人那拷贝不行。
M2_HOME(运行maven build)报错
eclipse中使用maven插件的时候,运行run as maven build的时候报错
-Dmaven.multiModuleProjectDirectory system propery is not set.
Check $M2_HOME environment variable and mvn script match.
如果上述没有$M2_HOME配置,则会报上面错误。加上即可。
Path环境变量加上:%JAVA_HOME%\bin;%MAVEN_HOME%\bin;
这里添加了jvm和maven的环境变量(到bin).
源码跟踪时无法找到源文件
Maven命令时访问源码方式和webProject部署到tomcat Server形式不同,必须手动配置,在配置mvn命令时指定:
8081端口冲突
启动后台系统后,浏览器访问却提示出错404。
代码都正确,启动也正确,为何报错找不到呢?仔细看页面错误,会发现灵异事件,我们启动的是tomcat,但提示却是jetty?怎么会这样呢?说明浏览器请求被jetty拦截。说明电脑上除了运行了tomcat,还运行了jetty。果然安装了nexus,Maven的私服。最新版本的nexus内置了jetty,换个端口即可。