Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java将tomcat安装为服务_Java_Linux_Tomcat_Service - Fatal编程技术网

java将tomcat安装为服务

java将tomcat安装为服务,java,linux,tomcat,service,Java,Linux,Tomcat,Service,我正在开发一个安装向导来在linux上安装应用程序,作为安装的一部分,安装tomcat并将其设置为服务,以便在系统启动时自动启动。有人能帮我弄清楚吗?(在linux上安装tomcat并仅通过Java代码将其设置为服务)这里有一个想法,但请记住,您可以用Java执行以下大部分操作,但不能用Java执行所有操作: 在大多数Linux发行版中,服务位于/etc/init.d——尽管路径可能不同,也可能是/etc/rc.d/init.d——因此您需要检查哪一个适用。通常,您会在其中复制一个启动服务的s

我正在开发一个安装向导来在linux上安装应用程序,作为安装的一部分,安装tomcat并将其设置为服务,以便在系统启动时自动启动。有人能帮我弄清楚吗?(在linux上安装tomcat并仅通过Java代码将其设置为服务)

这里有一个想法,但请记住,您可以用Java执行以下大部分操作,但不能用Java执行所有操作:

  • 在大多数Linux发行版中,服务位于
    /etc/init.d
    ——尽管路径可能不同,也可能是
    /etc/rc.d/init.d
    ——因此您需要检查哪一个适用。通常,您会在其中复制一个启动服务的shell脚本
  • 但是,shell脚本本身通常依赖于发行版,但是您可以准备多个shell脚本——每个发行版一个,通过启动命令
    uname-a
    并解析该命令的输出来确定发行版以及要复制到
    /etc/init.d
    的脚本。您需要为此脚本授予读取/执行权限,但可以通过启动
    chmod
  • 然后,您通常会将此脚本符号链接到
    /etc/rc2.d/
    /etc/rc3.d/
    ——您可以在这两种情况下对其进行符号链接;然而,您不能在Java中进行符号链接——您需要使用一些本机库
  • 或者也可以简单地将脚本复制到这些目录中;虽然这确实意味着现在您有3个配置点(
    /etc/init.d/
    /etc/rc2.d
    /etc/rc3.d/
    )并不理想
  • 或者另一个想法是启动
    ln-s/etc/init.d/yourscript/etc/rc2.d/name
    来创建符号链接
这意味着您的安装只能在Linux上运行。 希望这有帮助