【问题标题】:Speeding up Eclipse and JSF+Tomcat development加速 Eclipse 和 JSF+Tomcat 开发
【发布时间】:2010-10-31 06:32:26
【问题描述】:

有什么方法可以加快 Eclipse 和 Tomcat 中 JSF 的开发速度?

基本上,我正在寻找一种方法来使客户端更改(.jsf、.html、.css、.js)发生得更快,而不必重新启动 tomcat。

如果可能的话,还有一种方法可以使 tomcat(或任何其他与 Windows + Eclipse 兼容的 Servlet 容器)重新启动更快。

因为如果我比较我使用 ASP.NET/Visual Studio/IIS 的经验,感觉就像我花了半天时间等待 Tomcat 重新启动,有时我什至在浏览器中得到 404,因为它不会足够快。

必须有其他方法来提高生产力,并且仍然允许更多的测试驱动开发。

【问题讨论】:

  • 您在项目中使用 Maven 吗?

标签: eclipse tomcat jsf


【解决方案1】:

我相信MyEclipse,如果配置正确,可以让您更新运行在 Tomcat 中的应用程序,而无需重新启动 Tomcat。不幸的是,它是一个商业产品。

Oracle JDeveloper 捆绑了 OC4J 的副本,并且可以在不重新启动容器的情况下即时进行更改,同样,鉴于您的环境,这可能是不可能的。

【讨论】:

    【解决方案2】:

    万一你使用 Maven 构建你的项目,你可以使用这个命令行在 Tomcat 中进行测试:

    mvn clean war:exploded tomcat:run
    

    这将运行一个 slim Tomcat 实例 (tomcat:run) 以获取您的 Web 文件(.jsp、.html、.css、.js)的更改直接来自您正在编辑的源代码 (war:exploded),因此您只需在浏览器中按 F5

    【讨论】:

      【解决方案3】:

      如果我没记错的话,您可以在应用程序运行时将客户端更改(.jsf、.html、.css、.js)复制到应用程序的 webapps 文件夹中。我使用的 jboss J2EE 版本的 Eclipse 允许热替换一些 java 代码。

      【讨论】:

      • 我直接从 Eclipse 运行应用程序(正常,Ganymede),所以我没有 webapps 文件夹。有没有办法将 webapps 文件夹配置为等于 Eclipse 文件夹?在 IIS 中,我可以在我的 dev 文件夹中设置一个 Visual Directory,以便客户端更改真的 快(甚至不复制!,因为它已经存在)。
      【解决方案4】:

      强制 Tomcat 重新编译/重新加载页面的一种快速而肮脏的方法是删除 Tomcat 的工作目录。在我有限的测试中,它运行良好,但显然,我不建议在生产中使用它。 :)

      【讨论】:

        【解决方案5】:

        您可以使用其他容器,而不是 tomcat,当您在项目中进行一些更改时不需要重新启动它。可以是Jboss。此外,如果您将使用一些工具,例如JBoss Tools,您的开发会更快更容易:-) 至于我,当您仅在 .css 或 .xhtml 页面中进行更改时,您不应该重新启动 tomcat,而应该重新发布您的应用程序。在 JBoss Tools 中,您可以使用 JBoss Tools 服务器视图来实现。

        【讨论】:

        • 这只是一个配置问题。它也适用于 Tomcat 和其他不错的应用服务器,您只需将 autodeploy/hotdeploy 设置为 true。
        【解决方案6】:

        您应该使用动态 Web 项目并告诉 Eclipse Java EE 部署到合适的 Tomcat 实例。这将允许 Eclipse 尽其所能提供帮助(但这仍然不是超快的速度)。

        【讨论】:

          【解决方案7】:

          把它放在你的 web.xml 中。

          <context-param>
              <param-name>facelets.REFRESH_PERIOD</param-name>
              <param-value>1</param-value>
          </context-param>
          

          这意味着:“应用服务器多久重新编译一次我的 JSP”。该值以秒为单位。

          【讨论】:

          • 虽然效果一样,但是你的解释是错误的。 Facelets 不是 JSP,Facelets 文件没有被编译。
          • 感谢您的澄清。
          猜你喜欢
          • 2011-09-06
          • 1970-01-01
          • 2011-06-01
          • 2011-04-02
          • 1970-01-01
          • 2014-06-06
          • 2012-04-26
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多