java - 从shell命令访问正在运行的java程序

标签 java unix command-line nio

我正在寻找一种从命令行访问正在运行的java程序的方法。最好的办法是执行以下操作:

启动java应用程序:

bash$java -jar MyBundle.jar App

访问应用程序:

bash$test.sh param1 param2

因此,test.sh 以某种方式从 MyBundle.jar 调用 App 并传递值 param1参数2

重要提示:我正在寻找非常快速的方法。 App 保留数据库连接,每次我需要访问数据库时启动 App 的成本非常昂贵。

我需要可以在 Ubuntu 和 Debian 中运行的解决方案。如果它能在 Mac 上运行 - 那就太好了。

感谢任何帮助!

最佳答案

我认为您需要采用客户端-服务器方法。您的应用程序是服务器,它作为后台进程运行并监听某个端口上的连接。您的客户端向服务器发出请求并返回响应。

在 java 中实现此功能的一种快速而简单的方法是将您的应用程序包装在 Jetty 中。 servlet 容器。例如,您可以将其设置为返回 JSON 响应,这很容易处理。

关于java - 从shell命令访问正在运行的java程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6188862/

相关文章:

shell - 对数字范围使用 sed 命令

linux - sshpass 中的多个密码

java - New Relic MySQL 服务器未显示

mysql - 通过命令行使用 mysql 时出现奇怪的输出

java - 如何使用特定算法设置数组的元素?

java - 根据条件进行依赖注入(inject)

xcode - 远程运行 Xcode 构建并获取结果以在本地运行项目或显示构建问题

java - Java中两个D数组的命令行输入

java - 递归方法中的NullPointer(获取通用树路径)

java - LWJGL - 如果我使用 VBO,我可以对单独的纹理做些什么?