我覺得應該多出一些開發(fā)linux應用的教程或者帖子,這樣才能降低門檻吐根,讓生態(tài)強大起來正歼。大家也都貢獻自己的力量,但是絕不是重復造輪子拷橘,這篇帖子只是降低打包門檻局义,但是不能降低開發(fā)門檻喜爷,希望能幫助到想做linux應用的人。
官方制作手冊https://www.debian.org/doc/manuals/maint-guide/index.zh-cn.html
本文不深究java代碼萄唇,只關注怎么將一個普通的java程序打包成可安裝的deb包檩帐,然后在deepin、UOS另萤、Ubuntu等環(huán)境下安裝
準備
- 隨便從網上找了一個java小游戲湃密,俄羅斯方塊的,先在本地run一下四敞,地址:https://gitee.com/zzk4513/JavaGame
-
拿到編譯所有后的class文件泛源,然后放到 tetries_code目錄下
整理目錄和文件
目錄結構
├── 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環(huán)境,此處不集成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
打包后文件
安裝
$ sudo dpkg -i tetris2_1.0.0_amd64.deb
安裝成功达箍,單擊菜單里的圖標
不好意思剛才玩了一會兒,忘記寫帖子了铺厨,就到這吧
另外幻梯,打包python的教程:https://maxyjian.github.io/2018/08/27/python_deb.html
2020/12/22更新: 在星火應用商店中發(fā)現更人性化的打包方式,叫debreate打包工具努释,可以打出標準的包來碘梢,具體參考:
https://bbs.deepin.org/post/195472#mod=viewthread&tid=195472