java程序设置开机自启

简介: java程序设置开机自启
  1. Windows 系统下设置 Java 程序开机自启
  • 使用注册表方式
  • 创建一个批处理文件(.bat):首先将 Java 程序打包成可执行的.jar文件。假设你的 Java 程序是一个简单的控制台应用,名为MyApp.jar,并且需要使用 Java 运行时环境(JRE)来运行它。创建一个批处理文件(例如start_myapp.bat),内容如下:


@echo off
       "C:\Program Files\Java\jdk1.8.0_XXX\bin\java" -jar "C:\MyApp\MyApp.jar"


注意:这里的jdk1.8.0_XXX应该替换为你实际安装的 JDK 版本号,C:\MyApp\MyApp.jar应该替换为你的.jar文件的实际路径。


  • 编辑注册表:按下Win + R键,输入regedit,打开注册表编辑器。在HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run路径下创建一个新的字符串值(右键单击Run,选择新建 - 字符串值)。将其名称设置为你想要的名称(例如MyApp),数据设置为批处理文件的完整路径(例如C:\MyApp\start_myapp.bat)。
  • 使用任务计划程序方式
  • 打开任务计划程序:在开始菜单中搜索 “任务计划程序” 并打开它。
  • 创建新任务:在任务计划程序中,右键单击 “任务计划程序库”,选择 “创建任务”。
  • 配置任务:
  • 在 “常规” 选项卡中,为任务命名(例如 “启动 MyApp”),并选择合适的安全选项(如运行用户)。
  • 在 “触发器” 选项卡中,点击 “新建”,选择 “启动时” 作为触发条件。
  • 在 “操作” 选项卡中,点击 “新建”,在 “程序或脚本” 字段中输入java,在 “添加参数(可选)” 字段中输入-jar C:\MyApp\MyApp.jar(同样,路径要根据实际情况修改)。
  • 在 “条件” 和 “设置” 选项卡中,可以根据需要进行其他配置,如设置任务重复执行的条件等。最后点击 “确定” 完成任务计划的创建。


  1. Linux 系统下设置 Java 程序开机自启(以 Systemd 为例)
  • 创建 Systemd 服务单元文件
  • 假设你的 Java 程序是MyApp.jar,并且依赖于 JDK 1.8。首先创建一个服务单元文件(例如myapp.service),将其放置在/etc/systemd/system/目录下,文件内容如下:


[Unit]
       Description=My Java Application
       After=network.target
       [Service]
       User=root
       ExecStart=/usr/bin/java -jar /opt/MyApp/MyApp.jar
       Restart=always
       [Install]
       WantedBy=multi - user.target


注意:


  • Description字段用于描述服务的功能。
  • After字段指定了该服务应该在network.target之后启动,这意味着网络初始化完成后才启动程序。
  • User字段指定了运行该服务的用户,这里使用root,你可以根据实际情况修改。
  • ExecStart字段指定了启动程序的命令,包括 Java 命令和.jar文件的路径,需要根据实际情况修改。
  • Restart=always表示如果服务意外终止,系统将自动重新启动它。
  • WantedBy=multi - user.target表示该服务应该在多用户模式下被启用。
  • 启用和启动服务
  • 重新加载 Systemd 守护进程:在终端中执行systemctl daemon - reload命令,使系统重新加载服务单元文件。
  • 启用服务:执行systemctl enable myapp.service命令,这样系统在下次开机时就会自动启动该服务。
  • 启动服务:如果想立即启动服务,可以执行systemctl start myapp.service命令。


通过以上方法,无论是在 Windows 还是 Linux 系统下,都可以实现 Java 程序的开机自启。在实际应用中,需要根据具体的系统环境和程序要求进行适当的调整。

相关文章
|
9天前
|
Java 流计算
利用java8 的 CompletableFuture 优化 Flink 程序
本文探讨了Flink使用avatorscript脚本语言时遇到的性能瓶颈,并通过CompletableFuture优化代码,显著提升了Flink的QPS。文中详细介绍了avatorscript的使用方法,包括自定义函数、从Map中取值、使用Java工具类及AviatorScript函数等,帮助读者更好地理解和应用avatorscript。
利用java8 的 CompletableFuture 优化 Flink 程序
|
26天前
|
XML 存储 JSON
Java程序部署
Java程序部署
|
6天前
|
存储 缓存 Java
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
这篇文章详细介绍了Java中的IO流,包括字符与字节的概念、编码格式、File类的使用、IO流的分类和原理,以及通过代码示例展示了各种流的应用,如节点流、处理流、缓存流、转换流、对象流和随机访问文件流。同时,还探讨了IDEA中设置项目编码格式的方法,以及如何处理序列化和反序列化问题。
25 1
java基础:IO流 理论与代码示例(详解、idea设置统一utf-8编码问题)
|
4天前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
13 1
|
27天前
|
消息中间件 分布式计算 Java
Linux环境下 java程序提交spark任务到Yarn报错
Linux环境下 java程序提交spark任务到Yarn报错
30 5
|
27天前
|
Java 编译器 数据库连接
探索Java中的异常处理:提升程序的鲁棒性
【9月更文挑战第25天】在Java的世界里,异常是那些不请自来、令人头疼的“客人”。它们悄无声息地潜入我们的代码,一旦出现,便可能导致程序崩溃或行为异常。但是,如果能够妥善管理这些异常,我们就能将潜在的灾难转变为增强程序鲁棒性和用户体验的机会。本文将通过深入浅出的方式,带领读者理解Java异常处理的重要性,并提供实用的策略来优雅地处理这些意外情况。让我们一起学习如何在Java中捕捉、处理和预防异常,确保我们的程序即使在面对不可预见的错误时也能保持稳健运行。
|
6天前
|
Java Python
如何通过Java程序调用python脚本
如何通过Java程序调用python脚本
10 0
|
1月前
|
监控 Java 数据库
Java程序如何进行不停机更新?
Java程序如何进行不停机更新?
38 1
|
12天前
|
Java
java的程序记录时间
java的程序记录时间
20 0
|
1天前
|
安全 Java UED
Java中的多线程编程:从基础到实践
本文深入探讨了Java中的多线程编程,包括线程的创建、生命周期管理以及同步机制。通过实例展示了如何使用Thread类和Runnable接口来创建线程,讨论了线程安全问题及解决策略,如使用synchronized关键字和ReentrantLock类。文章还涵盖了线程间通信的方式,包括wait()、notify()和notifyAll()方法,以及如何避免死锁。此外,还介绍了高级并发工具如CountDownLatch和CyclicBarrier的使用方法。通过综合运用这些技术,可以有效提高多线程程序的性能和可靠性。