首页 > 其他分享 >部署jar包并设置桌面启动器

部署jar包并设置桌面启动器

时间:2024-05-16 10:30:01浏览次数:14  
标签:文件 解释器 启动器 jar sh test 包并 Type

来自:https://blog.csdn.net/qq_41841482/article/details/136707345

前言
服务器安装的是Ubuntu系统(Ubuntu是linux的一个发行版本),然后将一个java程序部署在服务器中。因为现场使用人员不熟悉linux系统,不会使用命令行启动程序,故需要制作一个类似windows中bat文件,让用户直接双击就能打开程序。

部署环境
我把jar包放在了下面的路径中

/home/hzx/javaProgram/test
需注意,Ubuntu桌面上的主目录,打开后进入的地址是/home/hzx,hzx是登录系统的用户名,在使用命令行寻找文件时不要忘记前缀

配置双击启动方法
一下操作均通过命令行执行,且需要先登录su账户 

 

编写sh文件
首先编写sh文件,用于启动jar包。

cd /home/hzx/javaProgram/test #进入jar目录
vim start.sh #创建启动sh文件
在start.sh文件中输入以下内容,通过命令启动jar包

#!/bin/bash
cd /home/hzx/javaProgram/test/
java -jar pdf2png-1.0-SNAPSHOT.jar
此时就是可以通过命令./start.sh启动程序

编写desktop文件
linux中通过.desktop文件可以实现双击启动程序
进入/usr/share/applications/路径,创建一个.desktop文件

 

在testStart.desktop文件中输入

[Desktop Entry]
Type=Application
Name=testStartDesktop
Comment=testStart
Exec=/home/hzx/javaProgram/test/./start.sh
Terminal=true
Categories=Development
StartupNotify=true
下面解释一下文件中用到的关键字

Type [必选] 定义了Desktop Entry文件的类型。常见的"Type"数值是"Application"和"Link"。"Type = Application"表示当前Desktop Entry文件指向了一个应用程序;而"Type = Link"表示当前Desktop Entry文件指向了一个URL

Name [必选] 该数值指定了相关应用程序的名称,也是最终放在桌面后文件显示的名称

Comment [可选] 对当前Desktop Entry的简单描述

Exec [可选] 只有在"Type"类型是"Application"时才有意义。"Exec"的数值定义了启动指定应用程序所要执行的命令,在此命令是可以带参数的。

Terminal [可选] true/false,并且该关键字只有在"Type"类型是"Application"时才有意义。其数值指出了相关应用程序(即关键字"Exec"的数值)是否需要在终端窗口中运行。

Categories [可选] 只有在"Type"类型是"Application"时才有意义。"Categories"的数值指出了相关应用程序在菜单中显示的类别。

StartupNotify [可选] 该关键字只有在"Type"类型是"Application"时才有意义

Icon [可选] 该数值定义了当前Desktop Entry文件在应用程序浏览器或是在文件浏览器中所显示的图标。如果关键字"Icon"的数值是以绝对路径的格式给出,那么其数值所指定图标文件将被使用;反之,Linux系统将使用"Icon Theme Specification"在系统指定图标目录下定位所需要使用的图标文件。

将desktop文件复制到桌面目录下
cp命令用于文件的复制粘贴

 

执行后,会在桌面的右下角显示


设置文件权限
在桌面目录下打开终端,为.desktop文件设置权限
其中chown命令中,hzx为当前登录用户。

 

在执行完上面的两条命令后,右击文件,选择“允许运行”

 

执行后,文件的名称就会变成刚才配置的名称

 

然后双击就可以运行了。
————————————————

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/qq_41841482/article/details/136707345

 

sh文件怎么编写

编写sh文件主要涉及以下几个步骤:

  1. 创建sh文件:首先,需要创建一个以.sh为扩展名的文件。可以使用touch命令来创建文件,例如touch test.sh

  2. 编辑sh文件:接着,使用文本编辑器(如vivimgedit等)打开并编辑该文件。例如,使用vi test.sh命令进入编辑模式。

  3. 添加shebang行:在文件的开头添加shebang行#!/bin/sh#!/bin/bash,用于指定脚本的解释器。其中,#!/bin/sh指定使用Bourne shell解释器,而#!/bin/bash指定使用Bash shell解释器,后者是前者的增强版,支持更多的特性和语法。

  4. 编写脚本内容:在文件中编写shell命令和逻辑。可以使用#作为注释,但第一行的#!是特殊的,用于指定解释器。

  5. 保存并退出编辑器:在编辑器中完成脚本编写后,保存并退出。在vivim中,可以通过按esc键,然后输入:wq并回车来保存并退出。

  6. 添加执行权限:为了让脚本可执行,需要给文件添加执行权限。可以使用chmod +x test.sh命令来添加执行权限。

  7. 执行脚本:最后,可以通过两种方式执行脚本:使用相对路径(如./test 执行脚本时,如果脚本中指定了特定的解释器(如#!/bin/bash),则使用该解释器执行脚本;如果指定的解释器不存在,则会使用系统的默认解释器(通常是bash)。如果直接使用系统默认的解析器(如. xxx.sh`),则不会执行第一行的shebang指定的解析器,但shebang行仍然需要存在。

通过上述步骤,可以编写并执行一个简单的sh文件。在实际开发中,还可以根据需要添加更多的功能,如变量、条件判断、循环等,以实现更复杂的任务自动化。

标签:文件,解释器,启动器,jar,sh,test,包并,Type
From: https://www.cnblogs.com/qingzhen/p/18195468

相关文章

  • linux下桌面启动器
    来自:https://zhuanlan.zhihu.com/p/684429668Linux桌面环境为用户提供了灵活且可定制的工作空间。使用户能够简化工作流程的关键功能之一是创建桌面启动器或快捷方式。启动器是快捷方式,可让您轻松访问您喜爱的应用程序,无需浏览菜单即可轻松打开它们。在本指南中,我们将引导......
  • 创建桌面启动器即快捷方式
    参考:https://blog.csdn.net/ken2232/article/details/130413147一、麒麟系统下创建桌面启动器三种方式:1.直接拷贝法/usr/share/applications/#在此目录下,体现在左下角的开始菜单中。/home/userName/Desktop#在此目录下,体现在具体用户userName(如:用户Abc)的桌面上。对于......
  • deepin20.9启动器修改大圆角为小圆角
    获取源代码:aptsourcedde-launcher修改代码:vimsrc/windowedframe.cpp,623行caseTopRight:path.moveTo(topLeft.x(),topLeft.y());path.lineTo(topRight.x()-m_radius,topRight.y());//path.arcTo(topRight.x()-m_radius*2,topRight.y(),m_radius*......
  • Springboot项目的jar包的运行方式以及使用yum安装java后忘记了位置
    SpringBoot项目打包后的jar的部署方式这里我写了五种部署方式1.直接启动java-jarxxx.jar这种方式就只适合自己在测试时用一下,关闭会话就能停止运行属实是方便。2.后台启动java-jarxxx.jar&在后台静默启动,同样关闭会话也会停止,优点是和上面一样,日志是打印在窗口的3......
  • jenkins 拉取代码之后 自动执行jar包到部署服务器自动运行
                原文地址:  https://blog.csdn.net/xiuyuandashen/article/details/124490378......
  • jar分离lib打包
    Springboot瘦身(lib和程序分开打包)1.首先用mvncleanpackage正常打出jar包这个jar包可能有几百兆大小,lib占了绝大多数将jar包解压,将BOOT-INF下的lib包拿出单独存放2.修改pom重新打包<plugin><groupId>org.springframework.boot</groupI......
  • ojdbc6jar包手动解压导入本地仓库
    报错Cannotresolvecom.oracle:ojdbc6:11.2.0.1.0<!--oracle驱动--><dependency><groupId>com.oracle</groupId><artifactId>ojdbc6</artifactId><version>11.2.0.1.0</version></dependency>解决方式:......
  • docker部署jar包
    1、Dockerfile#构建镜像,执行命令:【dockerbuild-tjdk8:1.0.】FROMopenjdk:8-jdkMAINTAINERraorao#设置时区RUNln-sf/usr/share/zoneinfo/Asia/Shanghai/etc/localtimeRUNecho'Asia/Shanghai'>/etc/timezoneENTRYPOINT["java","-serv......
  • Linux系统jar包执行命令
    1.java-jarxxx.jar这种方式会将程序的输出打印在窗口中,一旦接收到ctrl+c指令就结束程序,程序不会在后台执行。当前终端关闭,程序也会关闭2.java-jarxxx.jar&这种方式会使程序在后台进行,和第一种方式的区别是,程序在接收到ctrl+c后程序进入后台继续执行,但是输出不会打......
  • 利用SpringBoot的CommandLineRunner编写命令行jar程序
    1.项目pom<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.......