哪种Java Web开发环境最适合绝对最小化构建 - 部署 - 测试周期时间?
Web开发环境: JBOSS,Tomcat,Jetty?部署WAR爆炸?复制WAR或使用符号链接?这里有一些我不知道的因素。
构建 - 部署 - 测试周期?在更改源代码或其他资源(包括Java源代码,HTML,JSP之后)测试浏览器更改所需的时间JS,图像等。)。
我希望通过减少观看Ant构建和J2EE容器开始的时间来加速我的开发。我想要Ruby on Rails体验 - 或者尽可能接近我。
我更喜欢与Web框架无关的解决方案,但是如果特定框架特别有利,那么我想听听它。
假设正在使用所有标准工具:Hibernate,Spring,JMS等。如果需要使用存根/模拟支持基础结构来完成这项工作,我就可以了。事实上,如果我的生产环境与我们的生产环境截然不同,我可以节省足够的时间。
答案 0 :(得分:7)
你应该看看Javarebel:
http://www.zeroturnaround.com/javarebel/
这个帖子在这里:
How to improve productivity when developing Java EE based web applications
答案 1 :(得分:6)
JBOSS使用Tomcat作为其servlet / JSP引擎,所以这是一个清洗。
Tomcat支持hot deploy。
Jetty非常小并且很快就开始了,但它doesn't support hot deploy。
Eclipse只是一个IDE。它需要某种servlet / JSP引擎。如果它像IntelliJ,您可以使用任何您想要的Java EE应用服务器或servlet / JSP引擎。
IntelliJ非常快,每次重建时都不必停止并启动服务器。它可以解决爆炸的WAR问题,所以事情发生得很快。
答案 2 :(得分:5)
建筑(曾经是编译)是我们时代的标志。我们需要快速验证我们的想法和行动。每当我发现自己多次建造时,通常都表明我没有专注。我没有计划。对我来说,这是停下来思考的时候。做一个需要完成的事情列表(这是与web框架无关的)完成它们并在一次构建之后测试它们。
答案 3 :(得分:3)
Jboss Seam和Jboss Developer Studio一起用于热部署除EJB之外的所有内容(SLSB,SFSB和实体需要重新部署)。
答案 4 :(得分:2)
你有没有考虑过Grails?
答案 5 :(得分:2)
部署速度与使用Google App-Engine + GWT(可选)+ Eclipse插件一样快。
从未见过更快的事情。
答案 6 :(得分:2)
Maven 2和eclipse。 mvn eclipse:eclipse< - 纯粹的真棒。此外,eclipse中的WTP工作得很好(maven生成有效的WTP项目)。
答案 7 :(得分:2)
我发现项目在几到十秒内合理地编译,部署和启动,这通常很好。
答案 8 :(得分:2)
您是否尝试过使用Eclipse Java EE,然后告诉它部署到Eclipse管理的服务器? Tomcat和JBOss以这种方式运行良好。还允许您更改方法中的代码,使用Ctrl-S并在服务器内更新类。
MyEclipse也很适合这样。
答案 9 :(得分:2)
GWT可能是我能想到的最快的。使用托管模式浏览器进行测试,您可以调试和更改代码,而无需重新启动任何内容。只需要单击浏览器中的刷新按钮,就可以进行更改(java,css等)。另一件事是GWT正在向普通浏览器(Firefox,IE,Safari)添加相同的支持,因此您可以以相同的方式从它们内部进行调试。这些变化将在2.0中出现。见http://code.google.com/events/io/sessions/GwtPreviewGoogleWebToolkit2.html
答案 10 :(得分:1)
JRuby on Rails。在任何您想要的平台上开发,部署到标准Java服务器。
答案 11 :(得分:1)
我认为避免长版本部署测试周期的最佳方法是为代码编写单元测试。这样您就可以在不等待构建/部署阶段的情况下找到错误。
对于JSP,您可以直接在JBOSS工作文件夹中编辑JSP文件:
> cd $ JBOSS_HOME / server / default / tmp
> find -name myJspFile.jsp
./tmp/vfs/automountd798af2a1b44fc64/Jee6Demo.war-bafecc49fc594b00/myJspFile.jsp
如果您编辑tmp文件夹中的文件,则只需点击浏览器刷新按钮即可测试您的更改。