`
lovefly_zero
  • 浏览: 390023 次
  • 性别: Icon_minigender_1
  • 来自: 株洲
社区版块
存档分类
最新评论

Maven Jetty Plugin 配置指南(一)

阅读更多

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

 只需输入:mvn jetty:run

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

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

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

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

自动执行插件

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

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

  像下面pom.xml片段中描述的pre-integration-testpost-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>

 

         注意Maven默认都是通过org.apache.maven.pluginsgroupId来查找插件的,即使这个groupId跟上面要表达的内容完全不同。为了更明确的指向这个groupId是我们需要的插件,唯一的办法就是在settings.xml也做如下设置:

       <profile>

                 ...

                                       <pluginGroups>

                                         <pluginGroup>org.mortbay.jetty</pluginGroup>

                                       </pluginGroups>

</profile>

 

如何通过命令行停止插件

  委托Jetty插件无限期运行的目标包括runrun-warrun-exploded。你可以在视窗控制终端(如DOS窗口)使用<ctrl-c>关闭它,或者在另一个视窗控制终端使用stop目标关闭。如果你希望能使用mvn jetty:stop 执行关闭命令,则需要你在插件中配置一个特殊的端口和控制键。下面是一个例子配置:

<plugin>

        <groupId>org.mortbay.jetty</groupId>

        <artifactId>maven-jetty-plugin</artifactId>

        <version>6.1.10</version>

        <configuration>

          <stopPort>9966</stopPort>

          <stopKey>foo</stopKey>

        </configuration>

</plugin>

开始:

mvn jetty:start

关闭:

mvn jetty:stop

分享到:
评论

相关推荐

    maven-jetty-plugin

    Maven Jetty Plugin是一款强大的工具,它将Jetty服务器集成到了Maven的构建流程中。这个插件允许开发者在开发过程中快速、便捷地运行和测试Java Web应用程序,而无需进行完整的部署过程。它的主要功能包括: 1. **...

    maven集成jetty所需jar包maven-jetty-plugin,多版本

    `maven-jetty-plugin`是Maven的一个插件,它的主要作用是在Maven构建过程中,帮助我们运行和测试基于Servlet的Web应用程序。它允许开发者在开发环境中快速启动Jetty服务器,自动部署项目,并且能够随着代码的修改...

    Maven + Jetty Plugin

    "Maven + Jetty Plugin" 是一个用于快速开发和测试Java Web应用程序的组合,它结合了Maven构建工具和Jetty服务器。Maven是一个强大的项目管理工具,它简化了构建、管理和部署Java项目的过程,而Jetty则是一个轻量级...

    maven项目下用 jetty 启动热部署

    通过以上步骤,我们就成功地在Maven项目中配置了Jetty服务器的热部署。这种方式极大地提高了开发效率,使得开发者可以在编写代码的同时实时查看效果,减少了频繁的重启操作。记住,热部署只适用于开发环境,生产环境...

    jetty-maven-plugin-8.1.10.v20130312.zip

    【标题】"jetty-maven-plugin-8.1.10.v20130312.zip" 是一个用于Maven项目的Jetty服务器插件的版本包,它主要用于在开发过程中快速部署和测试Java Web应用程序。Jetty是轻量级、高性能的HTTP服务器和Servlet容器,而...

    maven jetty

    在Maven的pom.xml文件中,我们需要添加Maven Jetty插件的配置。以下是一个基本的配置示例: ```xml ... ... &lt;plugin&gt; &lt;groupId&gt;org.mortbay.jetty &lt;artifactId&gt;maven-jetty-plugin &lt;version&gt;6.1.26...

    maven +jetty 配置web工程

    总结起来,`Maven + Jetty`的配置是Java Web开发中的一个高效实践,通过它们,我们可以方便地管理项目依赖、构建Web应用,并利用轻量级的Jetty容器快速进行本地开发和测试。这不仅提高了开发效率,也使得项目更加...

    jetty-console-maven-plugin-1.53.zip

    【标题】:“jetty-console-maven-plugin-1.53.zip”是一个与Jetty服务器相关的Maven插件的版本包,版本号为1.53。Jetty是一款轻量级、开源的Java Web服务器和Servlet容器,广泛用于开发、测试和部署Web应用程序。...

    maven-jetty-plugin-6.1.3.jar

    maven-jetty-plugin-6.1.3.jar

    Maven与Jetty

    Maven是一个项目管理工具,它帮助开发者构建、管理和部署Java项目,而Jetty则是一个轻量级的嵌入式Servlet容器,常用于快速启动Web应用程序。这篇内容将深入探讨如何将两者结合,以便在开发过程中实现高效且便捷的...

    maven-jetty-plugin-6.1.7.jar

    maven-jetty-plugin-6.1.7.jar

    maven 创建web project 配置jetty运行

    本教程将探讨如何使用Maven创建一个Web项目,并配置Jetty服务器进行运行。这涉及到的两个核心文件是`pom.xml`(Project Object Model)和`web.xml`(Web应用部署描述符),以及一个额外的`webdefault.xml`,它定义了...

    maven-jetty-plugin-6.1.25-sources.jar

    maven-jetty-plugin-6.1.25-sources.jar

    maven-jetty-plugin-6.1.26-sources.jar

    maven-jetty-plugin-6.1.26-sources.jar

    maven-jetty-jspc-plugin-6.1.25-sources.jar

    maven-jetty-jspc-plugin-6.1.25-sources.jar

    tomcat-maven-plugin

    maven-tomcat-plugin让maven与tomcat配合得很好。它可以把应用部署到Tomcat服务器,也可以把tomcat作为内嵌服务器启动,就像jetty一样。 使用JPDA启动tomcat的远程调试功能。这样就能与eclipse配合起来,轻松地实现...

    解决maven projects plugin出现红线问题

    maven projects plugin出现红线怎么办,网上给许多比较蹩脚的方案。经过研究发现一个简洁的方法,一分钟就能搞定。

    maven-jetty-jspc-plugin-6.1.22-site-component.jar

    maven-jetty-jspc-plugin-6.1.22-site-component.jar

Global site tag (gtag.js) - Google Analytics