qt发布程序打包成安装程序_qt发布程序打包成安装程序

qt发布程序打包成安装程序_qt发布程序打包成安装程序注意:如果你的GUI工具存在以下问题:1、加载外部文件数据(例如字典文件)2、maven直接将程序与程序中使用到的第三方包一并打包3、程序运行正常,但由加载的第三方包的jar包生成的exe文件一

在这里通过举例:
将一个GUI界面工具生成jar包并使用exe可执行文件的过程来演示,其中也会附带打包过程中几种产生的问题。

注意:如果你的GUI工具存在以下问题:

1、程序运行正常,但打包过程中,出现程序包`com.sun.***`不存在
2、加载外部文件数据(例如字典文件),文件路径找不到
3、maven直接将程序中使用到的第三方包一并打包
4、程序一切运行正常,但将加载的第三方包的jar包生成的exe文件一同打包时仍然存在依赖报错

这里同样存在解决方案,不过文案先介绍一种成功的方式:
使用maven将第三方依赖包一同打包生成jar包,使用exe4j工具将jar包生成exe可执行文件。

一、EXE4J打包jar包,生成exe可执行文件

1、exe4j下载地址:https://www.ej-technologies.com/download/exe4j/files
下载太慢,附上网盘下载链接:
链接:https://pan.baidu.com/s/1JDpN70wxPBAqIPqijuOGiw提取码:6666

在这里插入图片描述

注意:exe4j 6.0 需要jdk1.8及以上版本。
由于CSDN版权限制,自己去搜License key。
名字和公司随便写,License key随便搜一下都能用,这里审核过不去

在这里插入图片描述

2、此处开始IDEA中使用Maven来生成带第三方依赖的jar包。maven的打包默认是不加载项目中使用到的第三方依赖的。
两种方式:添加pom代码,生成一份带依赖的jar包;或者生成exe时手动动添加所有依赖

  • pom.xml文件中添加以下依赖
   <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <!-- get all project dependencies -->
          <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
          </descriptorRefs>
          <!-- MainClass in mainfest make a executable jar -->
          <archive>
            <manifest>
              <!--更改为自己的主函数启动类-->
              <mainClass>com.bjwx.gui.ReqGui</mainClass>
            </manifest>
          </archive>
        </configuration>
        <executions>
          <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>

在这里插入图片描述

二、打开exe4j工具开始执行生成exe文件操作

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1、选择带第三方依赖的jar包进行加载

在这里插入图片描述

在这里插入图片描述
2、选择主函数所在启动类
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

三、介绍以下几种情况的解决方式:

需要注意以下几点:

1、程序运行正常,但打包过程中,出现程序包com.sun.***不存在

在这里插入图片描述

原因:util导包更换下,程序执行的时候一直没问题,但打包的时候就报异常。
处理如下:

在这里插入图片描述

2、加载外部文件数据(例如字典文件),文件路径找不到

1、exe文件生成之后,也是需要加载数据文件的,但IDEA工程内运行与exe执行相对于文件的搜索的位置是不一样的,记得更改为exe文件能加载到的位置再生成jar包
2、需要加载外部数据文件的情况下,直接在exe4j软件内点击运行还是会报文件找不到,这个只需要从文件夹内点击就不会报错。

在这里插入图片描述

3、maven直接将程序与程序中使用到的第三方包一并打包

注意:
1、不加pom.xml中需要添加的那部分代码,默认生成的是不含有第三方依赖的,需要在exe4j中手动添加依赖(上面有指定步骤位置)*
2、添加代码之后会生成两个jar包,注意使用工具加载时的选择。**
在这里插入图片描述

4、程序运行正常,但由加载的第三方包的jar包生成的exe文件一同打包时仍然存在依赖报错

例如:这一部分我是完全正常操作,但还是出现这个POI操作excel的第三方包查找不到,问题在于POI的版本问题
在这里插入图片描述
在这里插入图片描述

今天的文章qt发布程序打包成安装程序_qt发布程序打包成安装程序分享到此就结束了,感谢您的阅读。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/82156.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注