在程序执行期间,有没有简单的方法将Linux / Unix命令传递给Java的args[]
?我想在cron中使用Java app。
答案 0 :(得分:3)
JVM已经为您做到了这一点:
public static int main(String args[]) {...
在args []中,您将拥有命令行参数。
如果您想要更多的软件(作为命名参数,v.g。-title = MyTitle),您可以尝试Apache命令行界面(CLI)库。
编辑以回答featon的评论:这不起作用,操作系统会将其解释为启动新流程的调用。此外,所有java进程的进程名称都是“java”(操作系统运行JVM并且不知道它在内部的作用)。
如果您想要与已经运行的Java进程通信,则必须打开通信路径。两种选择是:
另一条路径是使用J2EE应用程序服务器实现更多面向连续运行的Java进程的功能(甚至是cron任务的等价物),但他们需要付出一些努力才能熟悉。
答案 1 :(得分:0)
如果你有两个命令或两个在String []参数中传递它。如果您有更多命令,请考虑将它们放在某个文件中,并仅将该路径作为java程序参数传递给该文件。