如何从Java gradle项目中获取将应用程序注册到systemd的deb包

如何从Java gradle项目中获取将应用程序注册到systemd的deb包,java,gradle,systemd,Java,Gradle,Systemd,如何从Java Gradle项目中获取deb包,该项目在安装deb文件后自动生成/etc/systemd/system/project.service,并在/var/project/bin/中添加二进制文件,在/etc/project/中添加配置文件 有点像但有系统的支持。 对不起,英语不好 我发现我可以用上面提到的词。 我只需要将这些行添加到build.gradle文件: buildDeb { link('/etc/systemd/system/project.service', '/op

如何从Java Gradle项目中获取deb包,该项目在安装deb文件后自动生成/etc/systemd/system/project.service,并在/var/project/bin/中添加二进制文件,在/etc/project/中添加配置文件
有点像但有系统的支持。
对不起,英语不好

我发现我可以用上面提到的词。
我只需要将这些行添加到build.gradle文件:

buildDeb {
  link('/etc/systemd/system/project.service', '/opt/project/bin/project.service')
}
并创建如下project.service文件,使插件将服务文件移动到deb包的安装目录:

[Unit]
Description=<description>

[Service]
User=<user>
Group=<group>
EnvironmentFile=-/etc/default/project
ExecStart=/opt/project/bin/project > /var/log/project/project.log
Restart=no

[Install]
WantedBy=multi-user.target

我发现我可以使用这个问题中提到的词。
我只需要将这些行添加到build.gradle文件:

buildDeb {
  link('/etc/systemd/system/project.service', '/opt/project/bin/project.service')
}
并创建如下project.service文件,使插件将服务文件移动到deb包的安装目录:

[Unit]
Description=<description>

[Service]
User=<user>
Group=<group>
EnvironmentFile=-/etc/default/project
ExecStart=/opt/project/bin/project > /var/log/project/project.log
Restart=no

[Install]
WantedBy=multi-user.target

我遇到了一个新问题,现在每次构建新版本并安装它时,我都需要运行以下命令:
systemctl daemon reload
如何摆脱此命令?我知道这是因为项目。服务的变化。我明白了。我编辑我的答案。通过将project.service设置为configurationFile并将
fileType=CONFIG | NOREPLACE
添加到与cozet.service相关的部分,我遇到了一个新问题,现在每次构建新版本并安装它时,我都需要运行以下命令:
systemctl daemon reload
如何摆脱此命令?我知道这是因为项目。服务的变化。我明白了。我编辑我的答案。通过将project.service设置为configurationFile并将
fileType=CONFIG | NOREPLACE
添加到与cozet.service相关的部分