当前位置: 首页 > 知识库问答 >
问题:

在启动时启动Java应用程序

符允晨
2023-03-14

我有一份Java申请。

应用程序有一个决定应用程序是否在启动时启动的设置。

目前,我通过在StartUp items文件夹中放置/删除快捷方式实现了这一点。

然而,我想知道是否有更好的方法来处理这种行为。

编辑

是的,是视窗。抱歉之前没有清除。

应用程序有一个UI,用户可以在其中触发操作,并且应用程序在运行时定期在后台运行一些任务。

@Peter,如何使用应用程序中的代码更改注册表?这种方法是否与所有版本的Windows兼容?

共有3个答案

曹新觉
2023-03-14

使用注册表在启动时启动您的程序,然后它将显示在msconfig提供的列表中。使用此注册表路径

H KLM\SOFTWARE\Microsoft\Windows\当前版本\运行

鄢承运
2023-03-14

在Windows上,我使用开源Java服务包装器将我们的应用程序作为窗口服务,您可以在启动时自动设置。

你需要做的是下载最新的wrapper.exe并创建wrapper.config文件,将所有配置如Main class任何VM aruments其他参数放在定义的标准中,并通过这个exe创建一个窗口服务

晏修诚
2023-03-14

下面是一个小示例片段,介绍如何从应用程序内部执行此操作

static final String REG_ADD_CMD = "cmd /c reg add \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"{0}\" /d \"{1}\" /t REG_EXPAND_SZ";
private void exec(String[] args) throws Exception
{
    if (args.length != 2)
        throw new IllegalArgumentException("\n\nUsage: java SetEnv {key} {value}\n\n");
    
    String key = args[0];
    String value = args[1];
    
    String cmdLine = MessageFormat.format(REG_ADD_CMD, new Object[] { key, value });
    
    Runtime.getRuntime().exec(cmdLine);
}

我很确定这将适用于所有版本的Windows,因为它们都使用相同的启动\运行注册表项。

希望有帮助!:)

信用

 类似资料:
  • 问题内容: 我有一个Java应用程序。 该应用程序具有一个设置,该设置决定该应用程序是否在启动时启动。 目前,我可以通过在“启动项目”文件夹中放置/删除快捷方式来实现此目的。 但是,我想知道是否有更好的方法来处理此行为。 编辑 是的,它是Windows。抱歉,之前没有清除该内容。 该应用程序具有一个用户可以在其中触发动作的UI,并且该应用程序在运行时会定期在后台运行一些任务。 @Peter,如何在

  • 当我的应用程序启动时,将创建一个executor服务(在java.util.concurrent中使用Executors.NewFixedThreadPool(maxThreadNum))对象。当请求到来时,executor服务将创建线程来处理它们。 当应用程序启动时,它将在executorService池中创建200个线程。 只是想知道当应用程序启动时,这是一种正确的创建线程的方法吗?还是有更好

  • 问题内容: 我尝试使用范围类型APPLICATION和带有@ Create,@ Beg的方法来注释类,但这似乎不起作用。 我想要的是在应用程序启动时立即启动无限循环。 问题答案: 如果希望在初始化后立即执行方法,则可以使用以下注释:

  • 我正在尝试使用简单的spring启动应用程序。我在ApplicationContext上启动应用程序时遇到问题。 2017-04-26 11:17:31.101警告14528---[main]s.c.a.AnnotationConfigApplicationContext:上下文初始化期间遇到异常-取消刷新尝试:org。springframework。豆。工厂未满足的PendencyExcepti

  • 编辑:根据Jim Rush的建议,我现在使用rc.local而不是init.d direclty来运行永远启动启动。 你知道为什么这不起作用吗?我在覆盆子皮B+上运行覆盆子。我已经运行了/etc/init.d kuuyi start和forever kicks并启动了该应用程序。只是启动机器后就不会发生了。 在这方面的任何帮助都是非常感谢的,我在这方面就像乳制品日后的旧奶酪布一样筋疲力尽。

  • 问题内容: 我的服务器程序需要在EC2实例启动时启动。即时即时消息只是使用以下命令从我的SSH启动: 我尝试将其添加到.bashrc和/etc/rc.local文件中,但它们仅在我ssh进入时才起作用。 有人知道怎么做,以便在计算机启动时启动我的应用程序实例吗? 谢谢, 本 问题答案: 您可以创建如下脚本: 将您的脚本放在/etc/init.d目录下,然后使用以下命令: 通过使用有关 update