Java 拉德元';t将类文件部署到运行websphere server(本地开发)0
环境:WinXP。 RAD:版本:7.5.3(Eclipse 3.4.2) Websphere 6.1 我在本地RAD环境中有两个web项目和4或5个子jar项目。当我在调试和常规启动模式下更改类时,文件不会复制到服务器上运行 因此,通常我必须完全重新启动服务器,或者一起添加/删除项目 我可以更改为Servlet.java 当我进行“发布”时,ear/应用程序似乎会重新启动,但我所做的更改并不存在。因此我通常会重新启动服务器。这是一个生产力杀手 其他设置:Java 拉德元';t将类文件部署到运行websphere server(本地开发)0,java,jakarta-ee,websphere,ibm-rad,Java,Jakarta Ee,Websphere,Ibm Rad,环境:WinXP。 RAD:版本:7.5.3(Eclipse 3.4.2) Websphere 6.1 我在本地RAD环境中有两个web项目和4或5个子jar项目。当我在调试和常规启动模式下更改类时,文件不会复制到服务器上运行 因此,通常我必须完全重新启动服务器,或者一起添加/删除项目 我可以更改为Servlet.java 当我进行“发布”时,ear/应用程序似乎会重新启动,但我所做的更改并不存在。因此我通常会重新启动服务器。这是一个生产力杀手 其他设置: * Publish automatic
* Publish automatically turned off.
* Minimize resources. Use workspace.
我可以做些什么来确保这些类被复制过来
我的理论是:
我有类加载器/war设置的parent_first/应用程序。这是一个问题吗?
也许我应该删除ear并将其添加回websphere
我在服务器上进行了清理?您正在使用最新的RAD,我也是。以下是我解决此问题的指南:
- 启用错误日志以查看您是否获得有关内部RAD错误的直观信息,在7.5中,它可在“显示视图”中找到
- 如果您的更改未部署到Clean project
- 如果您的更改尚未部署,请重新生成项目
- 如果您的更改尚未部署,请重新部署project
- 如果您的更改尚未部署,请清理服务器
- 如果您的更改尚未部署,请重新启动服务器
尊敬。您的JSP复制正确吗?也就是说,当您在一个JSP中进行更改时,您能在浏览器刷新时立即看到更改吗?如果这样做有效,那么我看不出有任何理由不发布类。JSP自动刷新应该在正常和调试模式下工作 现在,是否启用了“自动生成”功能?如果否,您的类将不会被编译和传输。类加载的父类/应用程序不应该是一个问题 本地应用程序服务器是否以开发模式运行?如果不是,则应为 在开发时,使用调试模式。热部署将确保立即看到对方法的更改。不会看到类中的更改(即,添加方法将需要重新启动应用程序) 你的app.server是否使用全局安全性?我已将其关闭,自动重新部署工作正常 在开发Java EE应用程序时,类重新加载一直是个问题。请尝试从WAS中删除该ear文件,然后重新部署它 如果其他方法都失败了,那就试试看
不幸的是,使用WebSphere的RAD环境非常不稳定 根据我的经验,调试模式导致了很多问题。主要是您描述的,重新发布后看不到更改,另外内存消耗非常快。我使用调试模式作为上次报告 在正常模式下,一切都应该正常运行(阅读:在大多数情况下)。您可以添加/更改某些类并进行“重新发布”。有时在重新发布project之前,有必要对其进行清理 但是,当Websphere与RAD一起运行的时间更长时,我发现经常会有一些东西卡住。服务器上有clean选项,使用可以清理缓存(其中还包括编译过的类)。您还应该观察内存使用情况。如果它接近JVM的限制(内存泄漏严重)Websphere停止正常运行,您必须重新启动它 然而,我有时会遇到一些严重的问题,清理没有帮助,然后有必要删除所有应用程序,停止websphere(关闭所有项目,然后再次打开),然后启动websphere并添加所有应用程序,同时重新启动RAD。但这不是每天都会发生的,可能是每个月左右
如果你真的不走运,RAD可能会破坏你的工作区,这将迫使你删除所有项目、删除项目文件(或重新签出)并再次导入所有内容,甚至启动一个新的工作区(在“正常”Eclipse中也会发生,大约1-2年).这是一个生产力杀手,事实上比很久以前使用RAD从EclipseBeen arround开始更糟糕,你不需要使用管理控制台来实现重新发布。尽管这是一个很旧的方法,但它非常令人沮丧。这是一个很好的例子,说明了由于有缺陷的软件,see并不是你得到的东西。这可能太晚了,无法使用但是,由于这是我在这个问题上发现的第一个有价值的谷歌结果,它可能会帮助其他人:当JAR中只进行了更改时,RAD似乎在发布方面存在问题。我发现的最简单的解决方案是在Web项目(WAR)中的文件中添加,然后删除字符,然后保存。这将导致RAD实际上正确地发布您的EAR。是的,是的,胜利。我认为您关于在战争中更改文件的建议实际上解决了问题。基本上没有好的解决方案。事实上,JRebel对生产力非常好。在使用RAD/Websphere近十年后,JRebel是唯一的选择这改善了在本地环境上部署的时间。当我不得不发布或重新启动服务器时,我仍然会畏缩……这需要5-10分钟的时间。