我的情况是,我基本上希望能够在Eclipse中拥有一个Web项目,其中WebContents文件夹是从多个项目合并而不是仅仅是一个动态Web项目。
如果我在项目A中有“a.jsp”,而在项目B中有“b.jsp”,我想在Web容器中找到一个单独的Web应用程序,其中“a.jsp”和“b。 jsp“在同一个文件夹中彼此相邻。如果所有文件(不仅仅是jsp文件)都可以这样合并,那将是完美的。
这是我们的应用程序的核心版本,但能够轻松处理客户特定的更改。
我知道我可以使用合适的蚂蚁魔法来做到这一点,但我们希望有一些适合我们当前基于Eclipse的开发过程的东西。我们将在Java类上使用JSR-330依赖注入,基本上我喜欢依赖注入的东西,但仅适用于任何资源,而不仅仅是类。
Eclipse可以这样做吗?
如果Eclipse不能,那么EAR部署是否适合?我目前只有WAR的经验。
答案 0 :(得分:1)
如果使用Maven是一个选项,那么Maven overlays在这里是完美的,理论上应该由m2eclipse插件支持。但是我对此没有任何经验,可能存在一些问题(参见MNGECLIPSE-599),因此需要进行一些测试。
尽管如此,MNGECLIPSE-599的评论非常有趣,尤其是这一点:
对这个问题有什么好感吗?由于这个原因,我们整个团队已经转向Netbeans进行WAR开发。我们基本上等待Servlet 3.0为我们解决这个问题(Servlet 3.0将有效地否定我们在Maven中进行叠加的需要)我们公司在减少复制粘贴方面非常重要,因此我们使用叠加来管理必须在我们的应用
Java EE 6使覆盖层过时的方式对我来说并不是很清楚(通过Web Fragments?)但事实是Eclipse's WTP release with Java EE 6 support has been delayed to June 2010。因此,在此之前,您需要额外的工具(例如maven覆盖)或者应该考虑切换到NetBeans。
答案 1 :(得分:1)
我有一个类似的用例,我通过使用(如Pascal建议)Maven成功解决了。 我有一个根网站项目(也可以独立工作),对于每个客户端,我有一个单独的Web项目,配置为覆盖根网站项目。此外,由于每个客户端都有几个环境,我为每个环境创建了一个maven配置文件(test,prod,local,...)。我记录了这一点,如果你有兴趣我不介意给你发邮件。
答案 2 :(得分:0)
right click project > Properties > Builders
)并将ant脚本与您的eclipse进程集成localhost
上的开发。以下是使用FileSync的一些提示:
webapps/application
)。因此,只要按“保存”,文件就会被复制。FileSync.xxxx.prefs
)并使用prefs文件中的链接资源变量(让我们称之为preferences > workspace > linked resources
)来创建WEBAPP_HOME
亲戚中的所有绝对路径FileSync.xxxx.prefs
文件WEBAPP_HOME
变量。因此,设置不仅对一台机器有效,对团队中的每台机器都有效。答案 3 :(得分:0)
我建议使用servlet 3.0“捆绑jar文件中的资源”功能。 使用此功能,您可以在jar文件中包含Web资源(html / xhtml / css / js / jpg / etc)(当然还有java类文件),Web服务器将搜索“META-INF / resources”文件夹这些资源的罐子。
此处有更多详情: