在Linux上创建JPackage安装程序的Java应用程序时,linux-menu-group应该是什么?

9

创建JPackage安装程序应用程序在Linux上的规范是什么?

我已经为Windows创建了一个安装程序,现在正在Linux上创建一个安装程序(使用Ubuntu)

到目前为止,我已经:

-i target/Jaikoz/buildLinux
--main-class com.jthink.jaikoz.Jaikoz
--name Jaikoz 
--main-jar lib/jaikoz.jar
--app-version 10.1.0
--copyright "Copyright 2020 JThink Ltd, United Kingdom"
--arguments "-l2 -m2 -f" --java-options "-Dhttps.protocols=TLSv1.1,TLSv1.2"
--java-options "--add-opens java.base/java.lang=ALL-UNNAMED"
--vendor JThink
--icon "Jaikoz64.png"
--install-dir /opt
--linux-menu-group Jaikoz
--linux-shortcut

用于创建debian安装程序,它可以工作(但尚未正确运行安装),但我对许多事情感到困惑,因为我不太熟悉Linux环境。

  • 无法看到linux-menu-grouplinux-shortcut的效果。
  • 我应该使用linux-menu-group还是linux-app-category,如果是这样,它是预定义的列表吗?
1个回答

6

Linux菜单组

--linux-menu-group定义了应用程序将被归类的目录(由;分隔)。

桌面开始菜单条目和分类之间存在关联关系,但分类更加通用。 但是,通过将例如Education指定为值,您将在主菜单(桌面开始菜单)的Education组中看到您的应用程序快捷方式。

如果您的类别与现有类别不匹配,则将其添加到Other菜单部分。

从技术上讲,您提供的类别(通过--linux-menu-group)将添加到桌面入口描述符文件*.desktop) 的category属性中(请参阅桌面菜单规范)。
*.menu文件和包含*.desktop文件的目录组合构成各种菜单。

linux-menu-group的可能值:

例如,vscode使用此值:Utility;TextEditor;Development;IDE;

Linux快捷方式

如果不提供--linux-shortcut,则不会获得菜单快捷方式。 如果没有提供上述内容,则无法确定是否有理由提供--linux-menu-group

Linux应用程序分类

--linux-app-category与桌面菜单快捷方式无关。 它对应于*.deb文件的Section字段,并“指定包被归类的应用程序区域”。 参考文献

这类似于软件类型的分类(例如,在搜索软件包时)。

可能的值在此处有描述。请参见此处

谢谢,如果我想使用主要类别中的音频,它说我还必须使用音频/视频,那么我应该这样做吗--linux-menu-group=AudioVideo,音频。 - Paul Taylor
我认为你“不应该”。你可以使用 Audio。但是,如果你决定使用更多的类别,请不要忘记用 ; 分隔(而不是 ,)。 - Marinos An
1
@PaulTaylor 哦,好的,我刚刚看到了有关“音频”的注释:“桌面条目必须包括AudioVideo”。那么是的:--linux-menu-group="AudioVideo;Audio;"(最后也要加上一个;)。 - Marinos An

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接