怎么使用java运行python脚本?

jdk6.0后可以使用其他脚本引擎,但是怎么把python的包替换java的SCRIPT引擎包,然后执行?知道的大哥可以M下我。445824272不知道别瞎说,可以调用的... jdk6.0后可以使用其他脚本引擎,但是怎么把python的包替换java的SCRIPT引擎包,然后执行?知道的大哥可以M下我。445824272
不知道别瞎说,可以调用的。
展开
 我来答
书荒莫慌
2010-07-15 · TA获得超过2972个赞
知道小有建树答主
回答量:700
采纳率:0%
帮助的人:536万
展开全部
如果是jython,也就是运行在Jvm上的python的话,可以使用JSR223,JDK1.6已经包含了该扩展包。JSR223是一个用于解析多种脚本语言的库包,其中包括Jython。除了JSR223包之外,还需要jython-engine.jar包。
ScriptEngine engine = new ScriptEngineManager().getEngineByName("python");
try
{
engine.eval(new FileReader("./script/listing.py"));
}
catch(ScriptException se)
{
}
catch(IOException ie)
{
}
或者参考:http://www.360doc.com/content/10/0608/23/1404822_32043230.shtml
很久之前用过ScriptEngine,对在Jvm上的脚本语言比如jruby,jython,groovy等支持性都很好,有点忘记了。
du瓶邪
2015-08-08 · TA获得超过2.4万个赞
知道大有可为答主
回答量:1.7万
采纳率:100%
帮助的人:2938万
展开全部
1.直接执行Python脚本代码
    引用 org.python包
1 PythonInterpreter interpreter = new PythonInterpreter();
2 interpreter.exec("days=('mod','Tue','Wed','Thu','Fri','Sat','Sun'); "); ///执行python脚本

  
  2. 执行python .py文件
1 PythonInterpreter interpreter = new PythonInterpreter();
2 InputStream filepy = new FileInputStream("D:\\demo.py");
3 interpreter.execfile(filepy); ///执行python py文件
4 filepy.close();

  
  3. 使用Runtime.getRuntime()执行脚本文件
     这种方式和.net下面调用cmd执行命令的方式类似。如果执行的python脚本有引用第三方包的,建议使用此种方式。使用上面两种方式会报错java ImportError: No module named arcpy。
1 Process proc = Runtime.getRuntime().exec("python D:\\demo.py");
2 proc.waitFor();
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
脱脱帽
2010-07-15 · TA获得超过352个赞
知道小有建树答主
回答量:203
采纳率:50%
帮助的人:136万
展开全部
你的意思是用java 调用 Python?
可行吗?个人感觉python比java还先进。应该只有python调用java才对。
有个Jython可以使用java的类跟方法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友6606ac94b
2010-07-15 · TA获得超过1151个赞
知道小有建树答主
回答量:1331
采纳率:0%
帮助的人:1274万
展开全部
LZ等JDK7吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
mobilestart
2010-07-15 · TA获得超过279个赞
知道小有建树答主
回答量:1003
采纳率:0%
帮助的人:517万
展开全部
这个貌似不行吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式