一、背景条件

1. Linux系统是Debian 8

2. Java程序是test.jar,安装路径是/home/test/test.jar

二、编写java的启动脚本

startTest.sh

#!/bin/sh
java -jar /home/test/test.jar &
echo $! > /var/run/test.pid

三、编写java的停止脚本

stopTest.sh

#/bin/sh
PID=$(cat /var/run/test.pid)
kill - $PID
rm -fr /var/run/test.pid

四、编写testJava.service

[Unit]
Description=TestJava
After=network.target [Service]
Type=forking
ExecStart=/home/test/startTest.sh
ExecStop=/home/test/stopTest.sh [Install]
WantedBy=multi-user.target

五、添加到自启动

systemctl enable testJava

六、测试

启动: systemctl start testJava
停止: systemctl stop testJava

附、tomcat自启动service的配置

[Unit]
Description=Tomcat
After=network.target [Service]
Type=forking
PIDFile=/usr/local/apache-tomcat-8.5./tomcat.pid
ExecStart=/usr/local/apache-tomcat-8.5./bin/catalina.sh start
ExecReload=/usr/local/apache-tomcat-8.5./bin/catalina.sh restart
ExecStop=/usr/local/apache-tomcat-8.5./bin/catalina.sh stop [Install]
WantedBy=multi-user.target

1. 需要在catalina.sh中添加CATALINA_PID的参数配置和PID一致。

2. tomcat.service文件放置路径 /lib/systemd/system/

systemd自启动java程序的更多相关文章

  1. java程序,在windows下设置为开机自启动

    1.制作可运行jar包 2.设置开机自动,后台运行,确保不关 一下这几个方法是我试过的,由于有不同的问题,以后慢慢总结 (1).制作bat文件,放在"启动"里面 (2).设置组策略 ...

  2. paip.注册java程序为LINUX系统服务的总结。

    paip.注册java程序为LINUX系统服务的总结. ////////////////实现开机启动. 标准方法是按照/etc/init.d/下面的文件,修改一下:然后chkconfig xxx on ...

  3. 不错的linux下通用的java程序启动脚本

    不错的linux下通用的java程序启动脚本(转载) 虽然写起动shell的频率非常不高...但是每次要写都要对付一大堆的jar文件路径,新加jar包也必须要修改起动shell. 在网上找到一个挺好的 ...

  4. 不错的linux下通用的java程序启动脚本(转载)

    转自:http://www.cnblogs.com/langtianya/p/4164151.html 虽然写起动shell的频率非常不高...但是每次要写都要对付一大堆的jar文件路径,新加jar包 ...

  5. 【转】不错的linux下通用的java程序启动脚本

    虽然写起动shell的频率非常不高...但是每次要写都要对付一大堆的jar文件路径,新加jar包也必须要修改起动shell. 在网上找到一个挺好的通用shell脚本. 只需要修改一些配置变量,就可以用 ...

  6. 面试官问我:平常如何对你的 Java 程序进行调优?

    阅读本文大概需要 10 分钟. 作者:张俊城, 郭理勇, 刘建来源:http://t.cn/AiCTERJz Java 应用性能优化是一个老生常谈的话题,典型的性能问题如页面响应慢.接口超时,服务器负 ...

  7. 用JavaServiceWrapper将JAVA程序发布成Windows服务

    怎么把jar文件做成系统服务,比较多的解决方案是使用 wrapper-windows 这个软件包.这个软件包的强大之处是能把jre环境也给打进去,这个服务可以正常运行在根本没有jre环境即就没有安装J ...

  8. [转载]一个标准java程序员的进阶过程

    第一阶段:Java程序员 技术名称 内                 容 说明 Java语法基础 基本语法.数组.类.继承.多态.抽象类.接口.object对象.常用类(Math\Arrarys\S ...

  9. Java 程序优化 (读书笔记)

    --From : JAVA程序性能优化 (葛一鸣,清华大学出版社,2012/10第一版) 1. java性能调优概述 1.1 性能概述 程序性能: 执行速度,内存分配,启动时间, 负载承受能力. 性能 ...

随机推荐

  1. docker安装tomcat

    先在官网上找可用的镜像 我使用的是7-jre8 获取tomcat镜像的命令:$docker pull tomcat:7-jre8 获取完镜像以后,通过命令可以列举出已有的镜像: 列举镜像的命令:$do ...

  2. jQuery clearQueue

    clearQueue()方法与clearQueue()方法结合: .clearQueue()可用于删除通过.queue()方法添加到通用jQuery序列的任何函数. 示例: <!DOCTYPE ...

  3. C++ 第二课:操作符号的优先级

           优先级     操作符 1 () [] -> .   ::         ! ~ ++ -- 2 - (unary) * (dereference)   & (addre ...

  4. vuejs 过渡效果

    过渡效果 https://cn.vuejs.org/v2/guide/transitions.html http://router.vuejs.org/zh-cn/advanced/transitio ...

  5. 【Zookeeper】源码分析之请求处理链(二)之PrepRequestProcessor

    一.前言 前面学习了请求处理链的RequestProcessor父类,接着学习PrepRequestProcessor,其通常是请求处理链的第一个处理器. 二.PrepRequestProcessor ...

  6. hdu 4336 概率dp + 状压

    hdu 4336 小吃包装袋里面有随机赠送一些有趣的卡片,如今你想收集齐 N 张卡片.每张卡片在食品包装袋里出现的概率是p[i] ( Σp[i] <= 1 ), 问你收集全部卡片所需购买的食品数 ...

  7. 令Django 视图有默认 login_required

    方法一 from django.template import RequestContext from django.shortcuts import render_to_response from ...

  8. MUI(拍照+系统相册)图片上传剪切预览

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. Knockout学习之文本和外观绑定器

    文本和外观绑定器 “visible”绑定 该绑定主要用来让我们通过监控属性可以控制html文档的显示,只要绑定的监控属性为false.0.null或者undefined则隐藏该标签,否则显示.比如下面 ...

  10. 触发JVM进行Full GC的情况及应对策略

    堆内存划分为 Eden.Survivor 和 Tenured/Old 空间,如下图所示: 从年轻代空间(包括 Eden 和 Survivor 区域)回收内存被称为 Minor GC,对老年代GC称为M ...