将java程序在deepin上打包城deb
2020-10-09 本文已影响0人
朽木亦自雕
我觉得应该多出一些开发linux应用的教程或者帖子,这样才能降低门槛,让生态强大起来。大家也都贡献自己的力量,但是绝不是重复造轮子,这篇帖子只是降低打包门槛,但是不能降低开发门槛,希望能帮助到想做linux应用的人。
官方制作手册https://www.debian.org/doc/manuals/maint-guide/index.zh-cn.html
本文不深究java代码,只关注怎么将一个普通的java程序打包成可安装的deb包,然后在deepin、UOS、Ubuntu等环境下安装
准备
- 随便从网上找了一个java小游戏,俄罗斯方块的,先在本地run一下,地址:https://gitee.com/zzk4513/JavaGame
image.png
-
拿到编译所有后的class文件,然后放到 tetries_code目录下
image.png
整理目录和文件
目录结构
├── DEBIAN
│ └── control
└── usr
├── bin
│ └── tetris2
│ └── tetries_code
└── share
├── applications
│ └── tetris2.desktop
└── icons
└── tetris2.png
debian/control文件中信息说明
Source: tetris
Section:
Priority: extra
Maintainer: <wiltonjia@163.com>
Build-Depends:
Package: tetris2
Architecture: amd64
Description: auto-generated package by debmake
Version: 1.0.0
desktop文件内容
[Desktop Entry]
Categories=Game
Encoding=UTF-8
Exec=/usr/bin/tetris2
Icon=/usr/share/icons/tetris2.png
Name=Tetris2
Name[zh_CN]=俄罗斯方块2
StartupNotify=false
Terminal=false
Type=Application
X-MultipleArgs=false
制作启动脚本
wilton-PC:~/Desktop/tetris2/usr/bin$ cat ./tetris2
# 因为我本地有java环境,此处不集成jre了,但是正常情况下deepin和其他几款linux好像是有openjdk的
cd /usr/bin/teries_code/
java com.zzk.teris.client.TerisClient
打包
# 切换到外层目录
$ cd desktop
$ dpkg -b tetris2 tetris2_1.0.0_amd64.deb
打包后文件
![](https://img.haomeiwen.com/i13183127/6f42351a027968a0.png)
安装
$ sudo dpkg -i tetris2_1.0.0_amd64.deb
安装成功,单击菜单里的图标
![](https://img.haomeiwen.com/i13183127/944b85b531eee5cd.png)
不好意思刚才玩了一会儿,忘记写帖子了,就到这吧
另外,打包python的教程:https://maxyjian.github.io/2018/08/27/python_deb.html