Jer*_*emy 5 html java eclipse apache tomcat
我正在试图找出开发和发布一个相当简单的Web应用程序的最佳方法,而且我遇到了几个问题.我将概述我所做出的决定,因为在某个地方,我显然已经脱离了轨道.非常感谢任何帮助!
我认为这是一个相当简单的Web应用程序.它包含一些引用几个java bean的jsps,以及通常的静态html,js,css和images.
决定1)我希望有一个清晰,干净的发布程序,这样我就可以在我的本地机器上进行开发,然后可靠地发布到生产机器上.因此,我决定将应用程序打包成war文件(包括所有静态资源),以最小化我需要释放的单独的部分.到现在为止还挺好?
决定2)我希望本地机器上的东西尽可能与生产环境相似.因此,在我的html中,我可能会引用一个静态文件,例如http://static.foo.com/file.为了使这段代码能够在dev和prod上无缝工作,我决定在本地开发时将static.foo.com放在我的/ etc/hosts中,这样所有的url都能正常工作而不会改变任何东西.
决定3)我决定使用eclipse和maven为我提供管理和构建项目的最佳实践环境.
所以我现在有一个很好的紧凑设置,除了:
每次我想改变开发中的任何东西,比如html文件中的一行,我必须重建整个项目然后等待tomcat加载战争才能看出它是否是我想要的.所以我的问题是:
1)有没有办法连接eclipse和tomcat,这样我每次都不需要重建战争?即tomcat直视我的实际工作空间来提供静态文件?
2)我认为通过使用/ etc/hosts来反映生产网址可能会让事情变得更难 - 是否有更好的方法不涉及手动更改网址(相对网址当然很好,但是你有很多子网域的地方) ,一个用于静态文件,一个用于动态,你必须写出完整的路径,当然?)
3)这真的是最好的做法吗?人们如何设置,以便一方面平衡自动化,无所不包的构建过程的需求,以及能够快速开发javascript和html和css的速度和灵活性,就像一个刚刚指出的那样快apache在目录下开发了吗?人们发现了什么?
非常感谢!
编辑:非常感谢您的回复!如果我能把它们标记好,我会......这真的帮助了我.我所听到的是,最佳实践是在开发中保留webapp的结构,并在尽可能接近生产的环境中运行它.似乎人们之间的差异在于人们准备将资源热部署到servlet容器的程度,以及为了一点额外的速度或便利而绕过构建过程.那讲得通.再次感谢.
为了回答#1,我建议如下:
mvn eclipse:eclipse或使用m2插件生成eclipse项目要回答问题#2,修改 /etc/hosts 文件来模拟生产并没有什么问题。只需有一个快速脚本,让您添加/删除这些条目并刷新您的 dns 缓存。我一直都是这么做的。(请务必通过相关设置让您的浏览器经常清除缓存)。
回答问题#3)是的,这就是你应该做的事情。每个构建都应该生成一个可部署的工件,您可以将其一步部署到任何环境。您需要确保无需 IDE 即可完成此操作,并且仅将 IDE 用作在开发阶段为您提供帮助的工具。
| 归档时间: |
|
| 查看次数: |
5298 次 |
| 最近记录: |