这是一个python的打包工具,可以把python文件以及图片文件打包成一个可执行文件exe。

需求:

公司需要把一个python生成的数据模型提供给Java调用,Java端要么安装puthon环境,要么通过python的web服务调用(flask和django),所以尝试使用Java调用exe的可执行文件。

windows下打包流程:

操作系统win10,编辑软件pychar,工具pyinstaller

通过pychar安装插件或者命令:

pip3 install pyinstaller

工具pyinstaller参数介绍:

pyinstaller相关参数

                 命令                                                          描述
 -F, –onefile  打包一个单个文件,如果你的代码都写在一个.py文件的话,可以用这个,如果是多个.py文件就别用
 -D, –onedir       打包多个文件,在dist中生成很多依赖文件,适合以框架形式编写工具代码,我个人比较推荐这样,代码易于维护
 -K, –tk  在部署时包含 TCL/TK
 -a, –ascii  不包含编码.在支持Unicode的python版本上默认包含所有的编码.
 -d, –debug  产生debug版本的可执行文件
 -w,–windowed,–noconsole    使用Windows子系统执行.当程序启动的时候不会打开命令行(只对Windows有效)
 -c,–nowindowed,–console

使用控制台子系统执行(默认)(只对Windows有效)  pyinstaller -c  xxxx.py / pyinstaller xxxx.py --console

 -s,–strip  可执行文件和共享库将run through strip.注意Cygwin的strip往往使普通的win32 Dll无法使用.
 -X, –upx  如果有UPX安装(执行Configure.py时检测),会压缩执行文件(Windows系统中的DLL也会)(参见note)
 -o DIR, –out=DIR

指定spec文件的生成目录,如果没有指定,而且当前目录是PyInstaller的根目录,会自动创建一个用于输出(spec和生成

的可执行文件)的目录.如果没有指定,而当前目录不是PyInstaller的根目录,则会输出到当前的目录下.

 -p DIR, –path=DIR

设置导入路径(和使用PYTHONPATH效果相似).可以用路径分割符(Windows使用分号,Linux使用冒号)分割,指定多个

目录.也可以使用多个-p参数来设置多个导入路径,让pyinstaller自己去找程序需要的资源

 –icon=<FILE.ICO>  将file.ico添加为可执行文件的资源(只对Windows系统有效),改变程序的图标  pyinstaller -i  ico路径 xxxxx.py
 –icon=<FILE.EXE,N>  将file.exe的第n个图标添加为可执行文件的资源(只对Windows系统有效)
 -v FILE, –version=FILE  将verfile作为可执行文件的版本资源(只对Windows系统有效)
 -n NAME, –name=NAME  可选的项目(产生的spec的)名字.如果省略,第一个脚本的主文件名将作为spec的名字

关于打包成什么样,有两种选择:

  • -D: 创建包含可执行文件的单文件夹包,同时会有一大堆依赖的 dll 文件,这是默认选项
  • -F: 只生成一个 .exe 文件,如果项目比较小的话可以用这个,但比较大的话就不推荐

windows下打包:

执行:

pyinstaller -F -w readModel.py

会在目录低下生成dist文件夹,里面就是exe文件,还会生成readModel.spec

java端直接调用:

具体调用方法参考我的文章:Java调用python的程序_影子-CSDN博客

这样就调用成功了!!返回值是6.485

在看看linux下打包流程:

操作系统ubantu20;利用WMware16.1;python环境3.8

安装相关的包:

执行命令:

sudo apt-get install   xxx(包名称)

要先安装pyinstaller,

输入:pip3 list  查看安装的包

第一步通过ftp把需要打包的文件上传到指定目录下面

第二步:进入cmd定位到文件目录下面,执行命令

pyinstaller -F -w readModel.py

成功打包!!!

第三查看文件:

dist下面的文件说明生成了。

ok!!!!!

具体的修改spec下面的参数,以后介绍。

pyinstaller打包流程相关推荐

  1. PyQt5初学试验记录(三):Pyinstaller打包小结

    前言:本记录为笔者自学过程中的简单笔记,说明了从安装库到最终打包成.exe的过程,分为三个部分,供初学者参考交流,存在表述有误的部分还请读者们多多指教,下方为第三部分目录. 文章目录 一.Pyinst ...

  2. python打包exe_Python | 用Pyinstaller打包发布exe应用

    笔者使用tk开发并打包成了Windows平台下的小工具. 工具/原料 Python2.7.11 Pyinstaller 3.1.1 安装Pyinstaller 1 按照习惯,我们使用pip来安装模块. ...

  3. python 打包 小文件_[Python][小知识][NO.5] 使用 Pyinstaller 打包成.exe文件

    1.安装 pyinstaller 插件 cmd命令:pip install PyInstaller PS . o.o 不知道 easy_install 的百度吧. 2.pyinstaller 简介 他 ...

  4. 【Python】Python项目打包发布(一)(基于Pyinstaller打包多目录项目)

    Python项目打包发布汇总 [Python]Python项目打包发布(一)(基于Pyinstaller打包多目录项目) [Python]Python项目打包发布(二)(基于Pyinstaller打包 ...

  5. Pyinstaller打包完整python项目 使用虚拟环境的python项目的打包

    Pyinstaller基本使用方法 安装pyinstaller pip install pyinstaller 切换到工作目录` cd xxxxxxxxxxx 简单打包命令 可以用命令直接打包单文件, ...

  6. pyinstaller打包出错记录

    稍微记录一下最近在liunx上pyinstaller打包出错 目录 稍微记录一下最近在liunx上pyinstaller打包出错 1 号坑 Python3.7.0安装 2号坑 成功打包但是执行失败 3 ...

  7. Windows系统下使用pyinstaller打包PaddleOCR中表格识别PP-Structure

    Windows系统下使用pyinstaller打包PaddleOCR中表格识别PP-Structure 一.系统环境及PP-Structure简述 二.安装Python环境与PP-Structure ...

  8. python打包中文报错,解决python3+Gooey使用pyinstaller打包时无法输出中文的问题

    问题出处 代码如下: # -*- coding: utf-8 -*- from gooey import Gooey, GooeyParser def run(keywords): print(key ...

  9. Pyinstaller 打包 torch 后执行失败 OSError: could not get source code

    1. 问题现象 系统环境 Python 3.6.9 torch 1.2.0 torchvision 0.4.0 Pyinstaller 4.5.1 Pyinstaller 打包 torch 后执行失败 ...

最新文章

  1. 用apxs来扩增apache的模块
  2. SIFT,SURF,ORB,FAST 特征提取算法比较
  3. 机器学习笔记(十三)半监督学习
  4. Bootstrap页面布局13 - BS按钮
  5. 如何让一个对话框全屏对话框
  6. Java SE 6 新特性: JMX 与系统管理(转载)-asp.net关注
  7. android 获取sim卡,Android 获取手机SIM卡运营商
  8. ffmpeg vaapi 驱动问题
  9. Dataguard后台进程解析
  10. python语言的主网址-python调用浏览器,打开一个网址
  11. Atitit 发帖机实现(2)---usrQBN2243 文本解析到对象协议规范
  12. java sort 字符串_java字符串怎么排序
  13. php5.3.3 xhprof,给CentOS6.3 + PHP5.3 安装PHP性能测试工具 XHProf-0.9.2
  14. C#实现斐波那契数列
  15. 163vip邮箱登陆有哪些方法?哪种最便捷?
  16. python另存为_python 将word另存为txt
  17. 一览「数字身份」市场结构:我们将在元宇宙中成为谁?
  18. 群辉DSM6.2下载 Transmission中文版介绍以及出现 syntax error near unexpected token 问题解决
  19. rk3288 linux 编译,注意了!VS-RK3288Ubuntu编译环境错误小结
  20. 基于ADN8830 TEC控制器实现温度控制电路设计

热门文章

  1. ActiveMQ专题2: 持久化
  2. 2017-10-22—发光二极管
  3. 十一、多线程——5-线程同步
  4. 软件项目管理四个核心价值观
  5. 经营你的iOS应用日志(二):异常日志
  6. 网站项目管理规范手册
  7. arch模型的思路_时间序列--ARCH模型
  8. 怎么用python画房子_怎么用python画小猪佩奇
  9. popstate_详解HTML5之pushstate、popstate操作history,无刷新改变当前url
  10. oss图片尺寸调用方式_CDN百科11 | 如何用CDN加速OSS源站资源