java - 与 Web 应用程序同时运行 jar 文件(独立的 java 控制台应用程序)

标签 java eclipse tomcat ibm-cloud

这几天一直被这个问题困扰。我无休止地用谷歌搜索,但几天后仍然没有找到解决方案。我的项目的最后期限几乎到了,所以你们是我最后的选择。

我的项目:

我有一个足够简单的 Web 应用程序,您可以在其中提交文件(我们称之为请求)并等待它被处理。提交请求后,详细信息将插入文本文件并保存。可以随时查看他/她的请求状态。这是我的客户端部分。

然后,我有一个持续 24/7 的引擎在后台运行,不断检查上述文本文件是否有新请求。一旦找到新请求,它就会开始处理它。完成后,它会更改其状态并更改文本文件中需要的任何详细信息。在 Eclipse 中,我将其作为 Java 应用程序运行。我还可以将其导出为可运行的 jar 并通过命令行运行。

我想做什么:

我希望能够将这两个部分组合在一起同时工作。这意味着一旦我部署了 Web 应用程序(WAR 文件),我希望引擎也能运行。我希望在 BLUEMIX 上部署它。我已经在 BLUEMIX 上完美地部署了客户端部分,但我只是不知道如何将引擎与它打包在一起。我在 Eclipse 上使用 WebSphere Application Server 和 Tomcat 进行测试。一切正常,但我只需要将这两个部分合并为 1。我尝试向项目添加一个监听器类,但问题是一旦我运行引擎类,它就不会加载我的 Web 应用程序,因为引擎假设只是继续运行(它有一个 while 循环)直到它被终止。

我是 Web 应用程序开发的新手,如果有人能为我指出正确的方向,那将非常有帮助!

最佳答案

尽管我可以帮助您获得在 Bluemix 中运行的内容(例如,通过自定义启动命令,或从 Liberty 派生另一个进程等),但我确实认为这不是解决您的问题的正确设计。正如其他人已经指出的那样,您可以考虑将这两个部分(Web 部分和工作部分)部署为两个应用程序,并通过队列服务(如 MQ Light 服务)将它们集成,或者使用线程池重写工作人员自由。如果应用程序要处理大量请求,则第一个选项更好。您可以在此处找到有关如何在 Bluemix 中执行此操作的示例:https://developer.ibm.com/messaging/2015/05/22/getting-started-with-java-apps-using-the-mq-light-service-for-bluemix/

关于java - 与 Web 应用程序同时运行 jar 文件(独立的 java 控制台应用程序),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30719682/

相关文章:

eclipse - 是否可以将调试 session 附加到Eclipse CDT中正在运行的程序

端口 80 中的 Tomcat SSL

apache - 如何将本地主机应用程序服务器从 Apache httpd 更改为 ColdFusion 10 中内置的 Tomcat?

java - Android setImageResource 导致应用程序崩溃

没有 JDT 的 Eclipse

java - 将模拟的多种排列应用于依赖项,以便在 Spring 中进行更好的单元测试

java - Eclipse 可以自动生成第三方库类的接口(interface)吗?

linux - Tomcat 重启时启动 : init. d 脚本不成功

java - Hibernate 和 Thymeleaf 无限递归

java - 如何从函数输入参数创建同名数组