http://commons.apache.org/daemon/
从1994年以来java已经发展为一个有效的开发工具,不仅仅是applets和客户端应用程序,还有可靠稳定的服务器端程序。JAva平台的主要的缺点当今还是依靠一个单一的入口点:( the public static void main(String[]) )来启动Java应用程序。使用单点入口对于客户端程序是一个有效的解决方案,一个用户可以交互地使用命令来退出应用程序(它可以调用System.exit(int)方法来中断虚拟机进程),但是在非交互式的应用程序下,例如服务器端程序,当前没有有效的方法通知虚拟机即将临近的关机。一个Java编写的服务器程序在能关闭虚拟机进程之前必须执行一些任务,例如一个servlet容器,在VM进程关闭之前,会话需要序列化到磁盘,web应用程序需要销毁。对于这个问题的一般解决方法是创建一个ServerSocket,接收发布的特定消息。当接收到信息,服务器程序执行关闭所有需要关闭的操作,最后调用System.exit方法退出虚拟机。然而,这种方法有一定的不利和风险,例如系统范围的关机,虚拟机进程会被操作系统直接关闭,而不会通知正在运行的服务器程序。或者,如果一个攻击这发现了发送到服务器需要的信息,使用一种方法把这样的信息发送给正在运行的服务器,他能轻易地中断一个服务器的操作,绕过了在操作系统上应用的安全限制。大多数多用户操作系统已经有启动和停止服务器程序的方法,在unix下非交互的服务器程序称为“daemons”,操作系统使用一套特定的信号控制它。在Windows下,这样的程序称为“服务”,通过调用定义在程序中特定的函数来控制它。虽然这些处理问题的方法不同,两种情况下,操作系统都能通知服务器程序即将到来的关机,应用程序能够在进程被销毁之前执行特定的任务。
Daemon包含两部分. 一个是用C编写的到操作系统的接口,另一个是用Java编写的Daemon API。
实际上win32和类UNIX平台都支持,win32平台使用procrun,类UNIX平台使用jsvc。
最初的Java classes来自Jakarta Tomcat 4.0项目。
Daemon组件推荐的包名称为 org.apache.commons.daemon 。
另外,给出一个封装的例子的连接:http://blog.platinumsolutions.com/node/234
分享到:
相关推荐
Apache Commons Daemon是一个开源项目,它提供了在Windows和Unix操作系统上运行Java应用程序作为系统服务的能力。在Windows环境下,它通常与Procrun一起使用,Procrun是一个可执行程序,允许我们将Java应用程序配置...
Apache Commons Daemon项目提供了一个解决方案,它允许我们将Java的jar包部署为Windows系统服务,使得jar包能够像其他系统服务一样启动、停止、管理和监控。这个过程涉及到几个关键组件和步骤,下面将详细介绍如何...
6. **安全性**:Apache Commons Daemon通过遵循各平台的安全模型,确保Java应用程序在作为系统服务运行时能够安全地与其他系统组件交互。 在实际应用中,Apache Commons Daemon常被用于Apache Tomcat、Jetty等Java ...
为了实现像系统服务那样自动启动和管理Java应用,我们可以利用Apache Commons Daemon工具将其安装为Windows服务。本篇文章将深入探讨如何将一个Java项目转化为Windows服务,以及涉及的Apache Commons Daemon组件。 ...
本篇将详细介绍如何在Windows系统中使用Apache Commons Daemon 1.0.15版本将Java程序安装为系统服务。 Apache Commons Daemon的核心工具包括`prunmgr.exe`和`prunsrv.exe`两个可执行文件。`prunmgr.exe`是服务管理...
Apache Commons Daemon的一个常见应用场景是Tomcat服务器,它通常被配置为使用Apache Commons Daemon在Unix或Windows上作为服务运行,确保即使用户注销,Web服务器也能持续提供服务。 了解和掌握Apache Commons ...
Apache Commons Daemon软件是一组实用程序和Java支持类,用于将Java应用程序作为服务器进程运行。在Unix术语中,这些通常称为“守护进程”(因此得名)。在Windows上,它们称为“服务”。 文献资料 可以在上找到更...
总结起来,Apache Commons Daemon和`jsvc`为Java应用程序提供了一种高效、可靠且与平台兼容的方式来作为系统服务运行。通过理解其工作原理和配置方式,开发者可以更好地集成和管理Java应用,使其能够在类Unix系统上...
其中,`jsvc`是Apache Commons Daemon项目的一部分,它是一个用于执行Java应用程序的命令行工具,可将Java应用转换为系统服务。 标题中的"commons-daemon-1.2.0-bin.tar.gz"是一个压缩包,包含了Apache Commons ...
Apache Commons Daemon是Apache软件基金会的一个项目,它提供了一个跨平台的服务守护进程,允许Java应用程序(如Tomcat)作为操作系统的服务来运行,这样可以实现后台启动、自动重启和管理等功能。 在Windows上,这...
Apache Commons Daemon是一个Java库,它允许Java应用程序作为操作系统服务在Windows、Unix和类Unix系统上运行。它提供了jsvc,一个可执行程序,可以将Java虚拟机(JVM)包装为系统服务,这样就可以通过系统服务管理...
Commons Daemon是Apache软件基金会开发的一个Java库,主要目的是在Windows操作系统环境下将Java应用程序转换为系统服务。这个项目属于Apache Commons系列,旨在提供跨平台的Java守护进程服务支持。标题中的"commons-...
commons-daemon-example Version: ${project.version} 一个相当简单的项目,用于演示Apache Commons Daemon项目的出色表现。 该项目演示了一个完整的应用程序,该应用程序可以在前台运行,或者(更重要的是)使用...
总的来说,Apache Commons Daemon是一个强大的工具,它让Java开发者能够轻松地将他们的应用转换为系统服务,同时提供了一个虚拟光驱功能,方便用户处理ISO镜像。由于它是免费且开源的,因此不仅适用于个人用户,也...
Apache Commons Daemon是一个开源项目,它提供了一个通用的后台进程(daemon)接口,使得Java应用程序可以在类似Unix的系统(如Linux、FreeBSD等)以及Windows上作为后台服务运行。在Windows环境下,Commons Daemon...
Apache Commons是一个非常有用的工具包,解决各种实际的通用问题。(附件中提供了该工具包的jar包,及源文件以供研究) BeanUtils Commons-BeanUtils 提供对 Java 反射和自省API的包装 Betwixt Betwixt提供将 ...
从标签"prunsrv.exe daemon"我们可以进一步理解,这个压缩包主要关注的是在Windows上作为后台服务运行Java程序的能力。`prunsrv.exe`是实现这一功能的核心工具。 在压缩包的文件名称列表中,我们看到了以下几个文件...
在Windows上,Apache Commons Daemon提供了一个名为`jsvc`的实用程序,它允许Java应用程序以服务的形式运行。`jsvc`是Daemon接口的本地实现,它可以与Java的`org.apache.commons.daemon.Daemon`接口一起使用,使得...
Apache Commons Daemon是一个Java库,提供了一个Java应用程序作为Windows服务运行的能力。它包含了一个名为`procrun`的工具,可以用来注册和管理Java应用程序作为Windows服务。这使得Java应用程序能够像其他Windows...
Java程序可以通过Java Service Wrapper(JSW)或者Apache Commons Daemon(Procrun)这样的工具注册为Windows服务。 **Java Service Wrapper (JSW)** JSW是一个开源工具,它允许Java应用程序以服务的形式在Windows...