将Python代码打包为jar软件的简单方法


Posted in Python onAugust 04, 2015

py 写东西快
但是java 生态广
比如大数据 py 虽然好 但是利用不到java的整个的生态的代码

scala 虽然也好但是毕竟 有些库 需要自己写的多
虽然也很简单 ,但是查文档也很麻烦

那么 问题来了
最简单的的方式就是直接把py 打包 jar

那么 问题又来了 py 打包成java 挺麻烦的 官方文档看不懂

答案 有了
写了个 包 https://github.com/yishenggudou/jythontools
搞这个事情

timger-mac:test timger$ python ../jytool/jytoollib.py hellojython.py main 

timger-mac:test timger$ java -jar output.jython.jar 
*sys-package-mgr*: processing modified jar, '/Users/timger/GitHub/jythontools/jytool/test/output.jython.jar'
hello jython
timger-mac:test timger$

整体代码如下

timger-mac:test timger$ java -jar output.jython.jar a a s s s
hello jython
['a', 'a', 's', 's', 's']
timger-mac:test timger$ cat hellojython.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Copyright 2011 timger
#  +Author timger
#  +Gtalk&Email yishenggudou@gmail.com
#  +Msn yishenggudou@msn.cn
#  +Weibo @timger http://t.sina.com/zhanghaibo
#  +twitter @yishenggudou http://twitter.com/yishenggudou
#  Licensed under the MIT License, Version 2.0 (the "License");
__author__ = 'timger'
import sys


def main():
  print "hello jython"
  print sys.argv

Python 相关文章推荐
Python中实现对Timestamp和Datetime及UTC时间之间的转换
Apr 08 Python
深入解读Python解析XML的几种方式
Feb 16 Python
python 添加用户设置密码并发邮件给root用户
Jul 25 Python
Python 实现引用其他.py文件中的类和类的方法
Apr 29 Python
python 去除txt文本中的空格、数字、特定字母等方法
Jul 24 Python
python3 property装饰器实现原理与用法示例
May 15 Python
python向字符串中添加元素的实例方法
Jun 28 Python
基于python的Paxos算法实现
Jul 03 Python
python json load json 数据后出现乱序的解决方案
Feb 27 Python
python如何导入依赖包
Jul 13 Python
python利用platform模块获取系统信息
Oct 09 Python
matplotlib交互式数据光标实现(mplcursors)
Jan 13 Python
python函数局部变量用法实例分析
Aug 04 #Python
python删除列表内容
Aug 04 #Python
解决Python传递中文参数的问题
Aug 04 #Python
Python利用ansible分发处理任务
Aug 04 #Python
合并百度影音的离线数据( with python 2.3)
Aug 04 #Python
python利用datetime模块计算时间差
Aug 04 #Python
使用python加密自己的密码
Aug 04 #Python
You might like
PHP第三方登录―QQ登录实现方法
2017/02/06 PHP
JS自动适应的图片弹窗实例
2013/06/29 Javascript
Javascript实现页面跳转的几种方式分享
2013/10/26 Javascript
纯js实现div内图片自适应大小(已测试,兼容火狐)
2014/06/16 Javascript
javascript结合CSS实现苹果开关按钮特效
2015/04/07 Javascript
javascript实现网页背景烟花效果的方法
2015/08/06 Javascript
javascript与Python快速排序实例对比
2015/08/10 Javascript
javascript实现PC网页里的拖拽效果
2016/03/14 Javascript
基于AngularJS实现iOS8自带的计算器
2016/09/12 Javascript
js实现可输入可选择的select下拉框
2016/12/21 Javascript
nodejs+express实现文件上传下载管理网站
2017/03/15 NodeJs
HTML的select控件美化
2017/03/27 Javascript
详解vue移动端日期选择组件
2018/02/22 Javascript
Vue-cli配置打包文件本地使用的教程图解
2018/08/02 Javascript
JS把字符串格式的时间转换成几秒前、几分钟前、几小时前、几天前等格式
2019/07/10 Javascript
js使用文件流下载csv文件的实现方法
2019/07/15 Javascript
node实现mock-plugin中间件的方法
2019/12/25 Javascript
webpack+vue.js构建前端工程化的详细教程
2020/05/10 Javascript
何时/使用 Vue3 render 函数的教程详解
2020/07/25 Javascript
vue 组件之间事件触发($emit)与event Bus($on)的用法说明
2020/07/28 Javascript
[03:03]2014DOTA2西雅图国际邀请赛 Alliance战队巡礼
2014/07/07 DOTA
[56:56]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第一场 8.22
2019/09/05 DOTA
关于python的list相关知识(推荐)
2017/08/30 Python
python3实现windows下同名进程监控
2018/06/21 Python
python正向最大匹配分词和逆向最大匹配分词的实例
2018/11/14 Python
Python CVXOPT模块安装及使用解析
2019/08/01 Python
CSS3 transition 实现通知消息轮播条
2020/10/14 HTML / CSS
Interrail法国:乘火车探索欧洲,最受欢迎的欧洲铁路通票
2019/08/27 全球购物
主要的Ajax框架都有什么
2013/11/14 面试题
大学生军训自我评价分享
2013/11/09 职场文书
问卷调查计划书
2014/01/10 职场文书
酒店管理专业毕业生求职自荐信
2014/04/28 职场文书
杜甫草堂导游词
2015/02/03 职场文书
Spring Boot 启动、停止、重启、状态脚本
2021/06/26 Java/Android
SSM VUE Axios详解
2021/10/05 Vue.js
科普 | 业余无线电知识-波段篇
2022/02/18 无线电