Maven Jetty Plugin配置指南

Jetty7 - 此插件更名为jetty-maven-plugin,以便更符合maven2的协定。为了在Web应用做快速应用 开发做准备,详见多Web应用源目录。

为了在Jetty里运行一个Web应用,你如果按照Maven默认的做法构造(resources文件存 放,${basedir}/src/main/webapp下Classes文件存放在${project.build.outputDirectory}下,web.xml 的配置描述${basedir}/src/main/webapp/WEB-INF/web.xml),你不需要配置任何其它东西。

只需输入:

mvn jetty:run

这将在端口为8080的Jetty服务器上启动你的项目。Jetty将持续运行,直到插件是明确停止,例如, 按下<ctrl-c>,您也可以使用mvn jetty:stop命令。

委托这个插件运行Web应用是非常方便的,因为它可以配置成能定期扫描Web应用的任何改变和自动部 署Web应用。这就可以消除开发周期中编译和部署的步骤从而更加富有成效。你使用的IDE时对项目做的任 何改变,都将直接自动导入到当前运行的web容器里,使您可以立即对其进行测试,立竿见影。

如果不管出于什么原因,你总不能运行一个未组合过的web应用吧,在下文讨论中提到这个插件同样也 支持jetty:run-war和jetty:run-exploded命令。

关于其他命令的更多信息请查阅Jetty文档中的mvn jetty:run page、mvn jetty:run-exploded page 、mvn jetty:run-war page。

自动执行插件

有时候,例如在做集成测试时,你当然希望在测试开始时自动运行你的项目,测试完成时停止,而不 只是手动的在命令行执行mvn jetty:run吧。

要做到这一点,你需要为jetty 插件创建几个<execution>脚本,并使用 <daemon>true</daemon>配置选项来预防Jetty无限期运行,迫使它只在执行Maven时才运行 。

像下面pom.xml片段中描述的pre-integration-test和post-integration-test 就是用来触发执行和关 闭Jetty:

<plugin>
     <groupId>org.mortbay.jetty</groupId>
     <artifactId>maven-jetty-plugin</artifactId>
     <version>6.1.10</version>
     <configuration>
         <scanIntervalSeconds>10</scanIntervalSeconds>
         <stopKey>foo</stopKey>
         <stopPort>9999</stopPort>
     </configuration>
     <executions>
         <execution>
             <id>start-jetty</id>
             <phase>pre-integration-test</phase>
             <goals>
                <goal>run</goal>
             </goals>
             <configuration>
                 <scanIntervalSeconds>0</scanIntervalSeconds>
                 <daemon>true</daemon>
             </configuration>
         </execution>
         <execution>
             <id>stop-jetty</id>
             <phase>post-integration-test</phase>
             <goals>
                 <goal>stop</goal>
             </goals>
         </execution>
     </executions>
</plugin>

时间: 2024-10-11 03:58:21

Maven Jetty Plugin配置指南的相关文章

mvn jetty plugin 配置

问题描述 还是mvn jetty plugin 配置,但是我的测试环境和线上环境不一样,我希望有2种打包方式?请问怎么做到呢? 解决方案 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.1.1</version> <configuration> &l

maven安装配置指南

Maven是一个基于项目对象模型(POM)的项目管理工具.更多详情请参考下面的帖子: maven_百度百科   http://baike.baidu.com/view/336103.htm maven官方网站: http://maven.apache.org/index.html Maven的安装配置比较简单,下面简单介绍一下. 1.从官网上下载安装包.http://maven.apache.org/download.cgi 这里我们点击下载:apache-maven-3.0.4-bin.zip

maven jetty

父项目: <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> </dependency> </dependencies> <profiles> <profile> <id>dev</id> <properties> <env>

【技术贴】第二篇 :解决使用maven jetty启动后无法加载修改过后的静态资源

  之前写过第一篇:[技术贴]解决使用maven jetty启动后无法加载修改过后的静态资源 一直用着挺舒服的,直到今天,出现了又不能修改静态js,jsp等资源的现象.很是苦闷. 经过调错处理之后,发现是jetty报错,可以如下修改解决,jetty defaultsDescriptor 不起作用 在web.xml中新的正确配置如下(使用版本:jetty -> install/jetty-distribution-7.2.0) <servlet> <servlet-name>d

项目管理-maven利用nexus配置私服报如下异常如何解决?

问题描述 maven利用nexus配置私服报如下异常如何解决? 先说下开发环境: apache-maven-3.1.1 nexus-2.6.4-02-bundle jdk1.7.0_45 最近开始使用maven构建项目(因为它实在太好用了),不过maven每次构建项目都要依赖中央仓库,这很不合理,所以使用了Nexus搭建了本地仓库,不过本地仓库搭建完成以后运行第一个命令mvn help:system就报了错,利用mvn -e help:system查看报错信息看了半天也没有头绪,下面就是这个报错

Intellij修改archetype Plugin配置

Maven archetype plugin为我们提供了方便的创建 project功能,Archtype指我们项目的骨架,作为项目的脚手架. 如fornt end的yo之类.我们能够通过简单的一行控制台command line创建你所需要的项目结构: 1 2 3 4 5 6 mvn archetype:generate   -DarchetypeGroupId=<archetype-groupId>   -DarchetypeArtifactId=<archetype-artifactI

PowerDesigner 9.5配置指南

  PowerDesigner 9.5 配置指南     PowerDesigner 9.5 引入了更多强大功能,便于您根据需要,扩展基本元数据的定义.   使用 PowerDesigner 能够在现有概念的基础上扩展出新的概念定义,并为此概念添加特有的属性.约束.符号,并生成代码.   本文将以一个支持 Robustness 结构图的模块扩展来详细说明这一特性.  简介Robustness 结构图应用于 Collaboration 结构图中.用户可使用三类对象:Boundary. Contro

JSP+JAVABEAN+SERVLET开发环境配置指南

js|servlet *************************************本贴从网上搜索得来,是我初学JSP找到的最好的一篇配置指南了.原作者已无法确定,不过在此也略表感谢.当初,我遍历TOMCAT英文文档依然无法找到SERVLET的安装配置的方法(本人E文水平有限),后来看到这贴子一时豁然开朗.值得推介.************************************* j2sdk1.5下载地址:http://java.sun.comtomcat5.5下载地址:h

Maven依赖的配置

Maven的依赖配置有基本的groupId,artifactId和version等元素组成,其实一个依赖声明可以包含如下的  一些元素      <project>          ...          <dependencies>              <dependency>                  <groupId>...</groupId>                  <artifactId>...&