0

我有一个 Java 应用程序需要实现在启动时启动 JAR 的安装功能。

我可以通过在注册表中输入 REG 文件在 Window 上执行此操作,但是如何在 UNIX 平台上执行此操作?如果方法不同,Linux 和 Mac。

Linux 和 Mac 有系统启动文件夹吗?

请记住,我需要以编程方式执行此操作,而不是通过系统首选项或类似的方式。

4

3 回答 3

1

在 Linux 上,经典的方法是在适当的/etc/rcN.d/目录中添加一个脚本(其中 N 是代表“运行级别”的数字 0-6)。我不确定这是否仍然是推荐的方式,但通常仍受支持。这也适用于其他主流 Unix 变体(Solaris、HP-UX、AIX)的微小变体。

在 Mac 上,您必须更加努力。文件/etc/rc.common和是相关的/etc/rc.imaging/etc/rc.netboot但没有/etc/rcN.d目录。还有一个脚本rc和另一个rc.local。打字man rc显示:

描述

rc.local现在不受支持,并已替换为 launchd(8),它通过 launchctl(1) bootstrap 子命令引导自身,以从标准位置读取 launchd(8) 作业。

也可以看看

launchd(8), launchctl(1)

因此,您应该调查launchctllaunchd尤其是launchctl.

于 2012-02-21T04:36:13.427 回答
0

在 Mac 上我认为launchdinit.d. 它们是配置文件。

于 2012-02-21T04:37:10.513 回答
0

这就是我在ubuntu上的做法。

首先创建一个 bash 脚本来运行 java 应用程序,类似于。

#!/bin/bash
java -jar "helloworld.jar"

并保存它,在本例中称为 /etc/init.d 中的“HELLOWORLD”。

需要使脚本可执行所以需要运行

chmod +x HELLOWORLD

最后让它在启动时运行

update-rc.d HELLOWORLD defaults
于 2012-02-21T04:50:20.143 回答