【问题标题】:How to automate the process of deploying a servlet using Eclipse and Tomcat?如何使用 Eclipse 和 Tomcat 自动化部署 servlet 的过程?
【发布时间】:2013-09-22 18:51:59
【问题描述】:

我正在开发一个 Web 服务应用程序,虽然服务运行正常,但我认为我花在开发、测试和修复代码上的时间被浪费了。这是我正在做的事情:

  1. 我在 Eclipse 中有一个普通的 java 项目,其中有我的所有代码 用于网络服务。我添加了一个 javax.servlet.jar 库到 构建路径,并使用接收请求 service(HttpServletRequest req, HttpServletResponse resp) 来自 HttpServlet,并以 JSON 格式打印结果。我用主 测试和修复部分代码的方法

  2. 当我确信我的代码没问题时,我会导航到 工作区,复制所有类文件,停止tomcat服务器,删除 在 web-inf 部署的旧文件,粘贴新的类文件并开始 tomcat 服务器。

我的问题是:有没有更快的方法来做 (ii) 以便我可以在编程/测试/修复过程中更快地迭代?我已经看到我可以使用 Dynamic Web Project 实现我想要的,但我担心它可能难以迁移并导致 SVN 出现问题。

谢谢!

【问题讨论】:

  • 你是在使用maven构建项目吗?如果是,则使用 maven tomcat/jetty 插件并在调试模式下启动该进程。或者在调试模式下启动你的 tomcat 并提供并连接你的 tomcat 与 JPDA

标签: java eclipse tomcat servlets


【解决方案1】:

有很多方法可以实现这一目标。

例如,您可以配置您的 java 项目以将 .class 文件输出到托管您的网络服务的网络应用程序的 docbaseWEB-INF\classes

right click on your project > Build path > configure build path > source

然后浏览到您想要的文件夹。

使用tomcat eclipse plugin 从eclipse 启动你的tomcat。它默认以调试模式启动它。

或者你可以添加 - 至少 - 方面 Dynamic Web Module 到你的项目下

right click on your project > properties > Project Facets

并选择 tomcat 作为运行时(如果尚未创建,请单击 new... 创建一个新的)。在这种情况下,您可以删除 HttpServlet 的额外 jar,因为新的运行时添加了您需要的所有库。完成后,您可以使用

在服务器上运行项目
right click > run as > run on server 

然后选择您希望项目在其上运行的服务器。您可以使用debug as 而不是run as 在调试模式下运行。

在这两种情况下,您都可以利用 Hot swap abilities of the jvm。仅当无法热交换代码时才需要重新启动服务器,即当您更改方法签名或向类添加一些字段时。

【讨论】:

  • 感谢您的回答 :) 我喜欢第二种方法,我正在努力解决这个问题。但我收到一条错误消息Runtime "Apache Tomcat v7.0" is invalid。我也无法指出我的 catalina_home 在哪里。你知道是什么问题吗?我拥有来自 Jboss Tools 的所有这些方面。
  • @MarcoAltran,也许你还没有创建一个,请在window > preferences > Server > Runtime Environments 下检查并在那里添加一个,这是一个简单的向导。或者只是编辑现有的尝试修复它。可能是tomcat安装目录错误。
【解决方案2】:

我喜欢在 Eclipse 中使用 Sysdeo tomcat 插件。 http://www.eclipsetotale.com/tomcatPlugin.html 它可以让你指向 tomcat 在你的项目中使用你的目标目录作为一个 webapp。允许热插拔代码替换和轻松启动、停止和重新启动。首先从上面的链接下载插件,然后在你的tomcat灌输conf\Catalina\localhost\的这个子目录中创建一个文件ROOT.xml

内容看起来像这样

<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="C:\workdir\myapp\src\main\webapp" path="/"/>

然后,您也可以将项目库依赖项添加到 tomcats 类路径,方法是转到 eclipse->properties->tomcat->advanced 还有 eclipse->properties->tomcat->source path 并选中项目旁边的框

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-22
    • 2012-03-17
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多