【问题标题】:Run Jar file on PC at startup启动时在 PC 上运行 Jar 文件
【发布时间】:2016-07-17 06:36:09
【问题描述】:

我知道之前有人问过类似的问题。但我无法以某种方式让我的工作。这是我已经尝试过的步骤。

  1. 我创建了一个 bat 文件为javaw -Xmx200m -jar C:\Path\to\jarfile\TheJar.jar 并放入启动文件夹。它适用于当前用户。这无济于事,因为我想在所有用户登录 PC 后为他们运行此文件。

  2. 我将键值创建为 HKEY_local_machine>software>microsoft>windows>current version >run 并将其放在字符串值中。那也没有用。

所以我有 Windows 10 64 位机器,并且需要将 jar 文件放在这些计算机上。一旦任何用户登录,jar 文件就需要运行。但到目前为止我做不到。

【问题讨论】:

标签: java windows jar startup


【解决方案1】:

尝试以下方法:

按如下方式编写批处理文件并将其保存为 *.bat 或 *.cmd:

start javaw -Xmx200m -jar C:\Path\to\jarfile\TheJar.jar

保存在所有用户的启动文件夹中创建的文件,应该是C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

注意文件夹很重要,因为如果你像我通常那样使用 Windows + R 和 shell:startup 快捷方式,它只会对当前登录的用户有效。

【讨论】:

  • 感谢您的解决方案。这次它不适用于其他用户。只是它只是不运行 jar 文件。没有显示错误消息。
  • 尝试仅使用java -jar C:\Path\to\jarfile\TheJar.jar 运行批处理,看看是否会有任何输出。或者甚至使用您正在使用的同一批次并将其放入正确的文件夹中。当我第一次写答案时,我以为文件夹不正确,可能是C:\Users\USER\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
  • 你是对的!用户能够运行jar,但我发现用户无法连接数据库。其他用户需要连接数据库才能运行。
  • @dambros 它是否适用于 Windows 10?命令中的“开始”是什么?如果我不使用 start 作为前缀而只使用 javaw 会发生什么?
【解决方案2】:

我假设您遇到的注册表问题是基于权限的?

您应该尝试将条目放在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run 而不是HKEY_LOCAL_MACHINE

根据this answerHKEY_CURRENT_USER“位置在以普通用户身份运行时不会出现权限问题”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-17
    • 2013-07-21
    • 1970-01-01
    • 2018-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多