2014-03-13 22 views
1

我知道您可以通过从批处理文件或类似的文件中调用它来运行jar作为Windows服务,并且我知道当您使用应用服务器(如WAS)时,或Glassfish,你有JVMS,它本身就是“运行”的。但是,除非我错了,否则这些不一定是“服务”。这就是说没有任何用户输入的过程。根据我的理解,你仍然需要调用JVM来让它执行一个过程(如果我错了,请随时纠正我)。但是我一直很好奇什么是Windows服务的Java/Linux等价物?也许这是JVM运行在像Tomcat或者Glassfish这样的应用服务器上。是否有与Windows服务相当的Java

+0

* nix系统上有cron ......但我怀疑有没有可以运行w/o JVM的Java进程。还有Spring Batch – user1766760

回答

1

Windows服务基本上是为您运行流程的后台任务。在Windows中,它们通常是二进制的(.exe's),可以挂接到Windows服务平台以启动和关闭来自OS(和服务管理屏幕)的消息。

无论何时执行Java,都需要运行时组件(JVM)来运行它。即使Websphere和其他应用程序服务器也在JVM中运行。

Linux中没有任何东西可以让您按照说法挂接到“服务”,但您可以在启动时模拟Linux的功能并运行启动项。

1

这取决于在Linux上的确切的味道被使用,但概念上的兄弟姐妹到Windows服务(即一个长期运行该操作系统启动时启动OS守护进程)是upstartsystemd

相关问题