【问题标题】:Light Java servlet container for development用于开发的轻量级 Java servlet 容器
【发布时间】:2011-03-03 21:04:52
【问题描述】:

我正在寻找用于快速开发的轻量级和简单的 servlet 容器。比如我想写Java代码而不用每次都重新编译来查看浏览器的变化。而且我不关心 servlet 能够处理数千个并发请求,因为我只需将它安装在我的本地 Windows 机器上,并且我将是唯一可以访问它的人。

我希望这种东西用于开发,这样我就可以将我的战争上传到我的“实时”servlet 容器中,该容器具有更成熟的 servlet 容器(Tomcat 等)。

这样的事情存在吗?

【问题讨论】:

    标签: java servlets


    【解决方案1】:

    JettyJetty Maven plugin 将成为您的指路明灯。

    [编辑]
    原始链接已失效。更新到新的 jetty-maven-plugin 主页。

    【讨论】:

    • 谢谢,我会试试的。你能告诉我更多关于编译部分的信息吗?你能改变一个 .java 文件并自动编译它吗?或者它是如何工作的?
    • 使用 jetty maven 插件,您可以将其配置为扫描您的源目录以查找对文件的更改。然后它将获取更改,编译它,并将其热交换到您的应用程序中,或者您配置它执行的任何操作。
    • 我已经配置了插件,但是当我对 .java 文件进行更改时,它似乎没有自动部署。它适用于 jsps/static 的东西,但不适用于我的 Java 文件。怎么会?
    • 我真的不能帮助你看看你做了什么......(码头插件页面有一个关于手动和自动重新加载的说明......你读了吗?)跨度>
    【解决方案2】:

    据我所知,最轻量级的 servlet 容器是 Jetty。我不知道有任何提供自动重新加载类的 servlet 容器,但您可以使用 JRebel IDE 插件来实现这一点。 JRebel 不是免费的,但它很便宜,而且物有所值。

    【讨论】:

      【解决方案3】:

      是的,正如您在 Eclipse 和 WTP 中描述的那样,这是可能的。 Eclipse 将重建您的代码并在每次保存时将其重新部署到(例如)tomcat 或码头。 maven-jetty-plugin 也可以,如果你碰巧在使用 maven。

      但是,如果您使用 Jetty,关闭服务器并将其重新启动的开销非常小(>1 秒)。如果您愿意这样做,那么您可以使用更多选项,例如自定义构建脚本、maven-cargo-plugin

      我最近不再尝试保留一个长时间运行的 tomcat,而是启动并杀死数十个 Jetty 实例,并且它运行良好。

      编辑:但请注意,Jetty 和 Tomcat 有时会有不同的行为。例如serving of static files via the default servlet

      【讨论】:

      • "Eclipse" 几乎可以从“轻量级”中获得。
      猜你喜欢
      • 2013-04-10
      • 1970-01-01
      • 2011-01-30
      • 1970-01-01
      • 2010-09-07
      • 2010-12-13
      • 1970-01-01
      • 2010-11-23
      • 2013-05-30
      相关资源
      最近更新 更多