2011-12-14 48 views
4

我有一个Java应用程序应该在后台运行在服务器机器上(应用程序可以通过没有GUI的命令启动)。问题是:当我从服务器注销时,应用程序被终止。我正在寻找类似于Linux下的nohup的东西。我发现了一些解决方案,但我不确定,对于我的情况(Windows Server 2003,从BAT-Skript运行Java应用程序,在启动机器后重新启动),最适合什么?解决方案有哪些优缺点?如何启动应用程序而不会在注销后死亡?

+1

服务是正确的路要走。我想你应该问['如何在Java中编写Windows服务?'](http://stackoverflow.com/questions/68113/how-to-create-a-windows-service-from-java-app ) – Rup 2011-12-14 10:42:27

+0

@Rup:我不是Java应用程序的程序员,它是我正在使用的[Tool](http://www.eex.com/de/downloads/tped)。 – 2011-12-14 10:46:07

+0

@Christian:那真的没关系。我的意思是你不必修改Java应用程序。只需将其作为服务或服务运行即可。 – abatishchev 2011-12-14 10:49:58

回答

3
  • 编写Windows服务(基于Java,C# - 我不认为这非常重要)
  • 开始从服务应用

3

在没有用户登录的情况下,您可以让进程运行的唯一方法是让进程作为Windows服务运行,或者至少由Windows服务调用。

0

是,Windows服务是肯定要走的路,但也有一些事情要注意,当您运行Java应用程序作为Windows服务。他们中的大多数将在本教程中展示了如何建立一个Java应用程序与我们的商业运行任何东西作为一种服务应用,AlwaysUp:

http://www.coretechnologies.com/products/AlwaysUp/Apps/RunJavaApplicationAsAService.html

请注意:您将几乎肯定需要“ - Xrs“标志,以防止关闭注销行为,但如果您正在捕获关闭事件,事情会变得棘手。让我知道如果这是你的情况的问题。

相关问题