1.使用jetty-maven-plugin插件
1.1.使用jetty-maven-plugin插件进行部署web项目
参考资料:http://www.blogjava.net/Jdonee/archive/2008/12/11/245650.html
为了能够使用maven的jetty插件对项目进行测试,需要进行如下操作:
1.修改settings.xml
</settings> ... <pluginGroups> <pluginGroup>org.mortbay.jetty</pluginGroup> </pluginGroups> ... <settings>
在默认情况下,只要org.apache.maven.plugins和org.codehaus.mojo两个groupId下的插件才支持简化的命令调用,即可以运行mvn help:system,但是 mvn jetty:run无法运行,所以为了能执行简化命令,修改settings.xml文件.
2.在项目中的pom.xml
<project> ... <build> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>jetty-maven-plugin</artifactId> <version>7.1.6.v20100715</version> <configuration> <!-- 为了能使用mvn jetty:stop 执行关闭命令,则需要在插件中配置一个特殊的端口 --> <stopPort>9999</stopPort> <!-- 该插件扫描项目变更的时间间隔,这是3秒.默认是0,表示不扫描 --> <scanIntervalSeconds>3</scanIntervalSeconds> <!-- 表示项目部署后的context path.如果项目名称是Demo.但是配置contextPath为test,那么访问这个项目就是http://localhost:8080/test --> <webAppConfig> <contextPath>/test</contextPath> </webAppConfig> </configuration> </plugin> </plugins> </build> ... </project>
3.项目测试示例:
@Controller @RequestMapping("/Demo01") public class DemoController01 { @Autowired private HttpServletRequest request; @RequestMapping("test01") public String test01(){ int a=2,b=5; a+=b; System.out.println("--测试- -"); request.setAttribute("name", "测试:"+a); return "test01"; } }
在myeclipse中启动项目
run as 中 maven build 构建goals命令:
项目启动后,测试:
启动jetty之后,在IDE中修改各类文件,如jsp,Html,css,JS甚至java类,只要不修改类名和添加新方法等,它都能扫描出来变更后更新至web容器中.
关于jetty-maven-plugin插件的高级配置,不明其意,以后接触过后再补充.
1.2.使用jetty-maven-plugin插件实现Debug断点调试
参考资料:http://blog.csdn.net/xufaxi/article/details/8751073
首先需要上述配置.当项目能正常在jetty正常运行以后:
整体步骤分两步.
第一步:
添加如下变量:
name : MAVEN_OPTS
value: -Xdebug -Xnoagent -Djava.compiler=NONE -Dfile.encoding=UTF-8 -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=6555
接下来第二步:
最后apply.至此就可以debug了.
当配置成功后,启动jetty-run时,控制台会出现如下信息:
接下,找到debug
触发断点,进入debug界面: