将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中正则表达式的使用详解
Oct 17 Python
Python环境下安装使用异步任务队列包Celery的基础教程
May 07 Python
Python实现的质因式分解算法示例
May 03 Python
利用python库在局域网内传输文件的方法
Jun 04 Python
使用python3构建文件传输的方法
Feb 13 Python
Scrapy框架爬取西刺代理网免费高匿代理的实现代码
Feb 22 Python
Python提取特定时间段内数据的方法实例
Apr 01 Python
Python re 模块findall() 函数返回值展现方式解析
Aug 09 Python
python+opencv3生成一个自定义纯色图教程
Feb 19 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
Pyinstaller打包Scrapy项目的实现步骤
Sep 22 Python
Python jieba库分词模式实例用法
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
ThinkPHP数据操作方法总结
2015/09/28 PHP
PHP+AJAX实现投票功能的方法
2015/09/28 PHP
php文件缓存方法总结
2016/03/16 PHP
php获取本机真实IP地址实例代码
2016/03/31 PHP
thinkPHP框架中layer.js的封装与使用方法示例
2019/01/18 PHP
JS完成代码前最好对其做5件事
2013/04/07 Javascript
禁止选中文字兼容IE、Chrome、FF等
2013/09/04 Javascript
Ext GridPanel加载完数据后进行操作示例代码
2014/06/17 Javascript
js通过location.search来获取页面传来的参数
2014/09/11 Javascript
javascript正则表达式使用replace()替换手机号的方法
2015/01/19 Javascript
详解JavaScript函数对象
2015/11/15 Javascript
AngularJS实现全选反选功能
2015/12/08 Javascript
jQuery Validate表单验证插件实现代码
2017/06/08 jQuery
详解Vuex管理登录状态
2017/11/13 Javascript
基于 Vue.js 2.0 酷炫自适应背景视频登录页面实现方式
2018/01/17 Javascript
Vue 源码分析之 Observer实现过程
2018/03/29 Javascript
React native ListView 增加顶部下拉刷新和底下点击刷新示例
2018/04/27 Javascript
React.js绑定this的5种方法(小结)
2018/06/05 Javascript
AngularJS 前台分页实现的示例代码
2018/06/07 Javascript
vue element-ui el-date-picker限制选择时间为当天之前的代码
2019/11/07 Javascript
[01:48]DOTA2 2015国际邀请赛中国区预选赛第二日战报
2015/05/27 DOTA
[41:17]完美世界DOTA2联赛PWL S3 access vs CPG 第二场 12.13
2020/12/17 DOTA
python strip()函数 介绍
2013/05/24 Python
win与linux系统中python requests 安装
2016/12/04 Python
python 读取excel文件生成sql文件实例详解
2017/05/12 Python
Python面向对象之类的内置attr属性示例
2018/12/14 Python
PIL图像处理模块paste方法简单使用详解
2019/07/17 Python
Python 使用指定的网卡发送HTTP请求的实例
2019/08/21 Python
如何基于python生成list的所有的子集
2019/11/11 Python
安德玛菲律宾官网:Under Armour菲律宾
2020/07/28 全球购物
介绍一下MD5加密算法
2016/11/12 面试题
浪费资源的建议书
2014/03/12 职场文书
内蒙古鄂尔多斯市市长寄语
2014/04/10 职场文书
天猫活动策划方案
2014/08/21 职场文书
家长反馈意见及建议
2015/06/03 职场文书
在Spring-Boot中如何使用@Value注解注入集合类
2021/08/02 Java/Android