`
ccq502849336
  • 浏览: 15878 次
  • 性别: Icon_minigender_1
  • 来自: 贵阳
文章分类
社区版块
存档分类
最新评论

如何在Java中调用Jython

阅读更多
本文介绍如何在Java中调用Jython,并提供了一些Jython的学习资料。
最近对脚本语言产生了兴趣,特别是Jython。今天正好有空,对Jython进行了一番简单的学习。

本文主要介绍如何在Java中如何调用Jython,尝试各种运行Jython脚本的方式。

在Java中调用Jython,首先需要运行脚本listing.py的源码如下:

   1. from java.util import Random    
   2. rng = Random()    
   3. #This is a comment in Jython    
   4. print "Flipping a coin..."   
   5. if rng.nextBoolean():    
   6.   print "Came up heads"   
   7. else:    
   8.   print "Came up tails"  

首先,可以直接在命令行中运行,在Windows的cmd中,输入以下命令:

   1. jython listing.py  

将出现如下的显示:

   1. Flipping a coin... 
   2. Came up heads

当然,我们主要的目的是在Java中运行Jython脚本。目前,可用的脚本解释器也比较多。在Jython的源包jython.jar中,包含了一种最基本的脚本解释器:PythonInterpreter。

代码如下:

   1. PythonInterpreter interp = new PythonInterpreter();    
   2.       interp.execfile("./script/listing.py");

除此之外,还可以使用JSR223,JDK1.6已经包含了该扩展包。JSR223是一个用于解析多种脚本语言的库包,其中包括Jython。除了 JSR223包之外,还需要jython-engine.jar包。

代码如下:

   1. ScriptEngine engine = new ScriptEngineManager().getEngineByName("python");    
   2. try   
   3. {    
   4.     engine.eval(new FileReader("./script/listing.py"));    
   5. }    
   6. catch(ScriptException se)    
   7. {    
   8.         
   9. }    
  10. catch(IOException ie)    
  11. {    
  12.         
  13. }  

除了以上两种Jython解释器之外,还可以使用apache的bsf 。这样就实现了在Java中调用Jython。

Jython的相关资料如下:

Jython主页:http://www.jython.org/
有 Jython的相关安装和配置,文档比较齐全

Jython中国:http://www.jython.com.cn/
里面有很多入门级的文章,非常值得初学者学习。

IBM的DW上的教程:http://www.ibm.com/developerworks/cn/views/java/tutorials.jsp?view_by=search&search_by=Jython
分享到:
评论

相关推荐

    Java实现调用jython执行python文件的方法

    exit 实际上也是通过调用 Runtime.exit() 来退出 JVM 的,这里说明一下 Java 对 Runtime 返回值的一般规则(后边也提到了),0 代表正常退出,非 0 代表异常中止,这只是 Java 的规则,在各个操作系统中总会发生一些...

    java中jython操作把python数据类型转成java类型

    在Java中,Jython是一个非常有用的工具,它允许我们在Java应用程序中嵌入Python代码,并能够无缝地在Python数据类型和Java数据类型之间进行转换。这极大地扩展了Java的生态系统,让我们能够利用Python丰富的库和简洁...

    java调用脚本语言笔记(jython,jruby,groovy)

    Java调用Jython、JRuby和Groovy提供了强大的动态编程能力,使得开发者可以在Java应用中充分利用这些脚本语言的优点。了解如何在Java中正确地调用和管理这些脚本,对于提升开发效率和应用功能都有很大帮助。在实际...

    Java中调用Python代码

    总结来说,Java调用Python代码是通过各种工具和库实现的,如Jython、Py4J等。这些方法各有优缺点,开发者应根据项目需求、性能和兼容性等因素来选择最合适的方式。在实际项目中,通过实践和调试这些工具,可以更好地...

    jython-standalone-2.7.0.jar

    《Java调用Python脚本:Jython详解及应用》 在现代软件开发中,常常需要在不同的编程语言之间进行交互,比如Java与Python。Jython是这样一种工具,它允许Java开发者无缝地运行Python代码,使得Java应用可以利用...

    java中调用python的必备jar包

    在Java中想要调用python程序,可以加入python的依赖包。 Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython也有很多从CPython中继承的模块库。...

    Jython示例

    在描述中提到的链接是一个关于如何在Java中调用Python的博文,它可能详细介绍了如何使用Jython来实现Java和Python之间的交互。具体的步骤可能包括设置环境变量、创建Python脚本以及在Java代码中执行这些脚本。 总的...

    java调用python中的自定义函数函数

    总结来说,Java调用Python自定义函数主要依赖于如Jython这样的互操作性工具。通过这些工具,开发者可以充分利用各自语言的优势,实现灵活的跨语言编程。在Java后端应用中,这种技术常用于数据处理、科学计算或利用已...

    Java调用Python.zip

    在Jython中,你可以将Python脚本编译成`.pyc`文件,然后在Java中加载执行。首先,在Java中引入Jython库,然后创建PythonInterpreter对象,通过这个对象执行Python代码。 ```java import org.python.util.Python...

    jython中文详细教程

    - Java集成:介绍如何在Jython中调用Java类库,实现Java与Python代码的混合编写。 - 应用实战:通过实例演示Jython在Web开发、数据处理等领域的应用。 **四、学习资源与实践** 1. **IBM Jython教程**:作为主要...

    jython学习文档

    这表明,在使用Jython时,为了能够调用Java中的接口,我们需要创建对应的Python实现,并通过Jython将其转换为Java的接口类型。这样做的好处在于,可以在Python中实现业务逻辑,同时利用Java的强大生态系统和性能优势...

    用java调用python

    JythonBridge 提供了与 Py4J 类似的功能,但它基于 Jython,允许直接在 Java 中运行 Python 代码,而不仅仅是调用 Python 脚本。 6. **使用 JPype**: JPype 是一个开源项目,它实现了 Python 和 Java 之间的互...

    java调用python入门详解

    本项目名为“java调用python入门详解”,主要展示了如何在Java程序中调用Python脚本进行数据处理或其他功能实现。下面将详细介绍这个项目中的关键知识点。 1. **Jython**: 为了在Java环境中运行Python代码,我们...

    Java调用python的方法(jython)

    使用Jython可以实现Java调用Python的方法,例如,在Java中执行Python语句。下面是一个简单的例子: Java代码: ```java PythonInterpreter interpreter = new PythonInterpreter(); interpreter.exec("days=('mod',...

    Java代码实现调用RapidOCR(基于PaddleOCR),适配Mac、Win、Linux,支持最新PP-OCRv4

    3. **Java与Python互操作**:为了在Java中调用Python的RapidOCR API,我们需要使用Java的Python接口,例如Jython或Java的PythonBridge库。不过,更常见的方式是使用Java的`Runtime.exec()`方法执行Python脚本。这将...

    jython-installer27.jar

    在实际应用中,Jython可以被Java应用调用,例如通过Java的ScriptEngine接口执行Python脚本,或者通过Jython API直接创建Python对象。这样,开发者可以在Java程序中动态地执行Python代码,或者使用Python库处理特定...

    python调用java

    但是,Jython并不完全兼容标准CPython(Python的默认实现),这意味着不是所有的Python库都能在Jython中运行。 2. **JavaBridge / JPype**: 这些工具允许Python通过Java的JNI(Java Native Interface)与Java交互。...

    Jython教程

    然而,由于Python的动态性,Jython中的类型检查是在运行时进行的。 4. **集成Java库**:Jython可以直接导入Java类,这允许开发者使用Java的API,如Swing或JavaFX来创建图形用户界面,或者调用Java的网络、数据库等...

    jython的用法及学习文档

    Jython 是一种能够运行在 Java 平台上的 Python 解释器,它允许开发者直接使用 Python 代码调用 Java API,同时也支持 Java 代码调用 Python 的功能。本文档旨在帮助初学者了解如何在 Java 应用程序中集成 Jython,...

Global site tag (gtag.js) - Google Analytics