本文介绍如何在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
分享到:
相关推荐
exit 实际上也是通过调用 Runtime.exit() 来退出 JVM 的,这里说明一下 Java 对 Runtime 返回值的一般规则(后边也提到了),0 代表正常退出,非 0 代表异常中止,这只是 Java 的规则,在各个操作系统中总会发生一些...
在Java中,Jython是一个非常有用的工具,它允许我们在Java应用程序中嵌入Python代码,并能够无缝地在Python数据类型和Java数据类型之间进行转换。这极大地扩展了Java的生态系统,让我们能够利用Python丰富的库和简洁...
Java调用Jython、JRuby和Groovy提供了强大的动态编程能力,使得开发者可以在Java应用中充分利用这些脚本语言的优点。了解如何在Java中正确地调用和管理这些脚本,对于提升开发效率和应用功能都有很大帮助。在实际...
总结来说,Java调用Python代码是通过各种工具和库实现的,如Jython、Py4J等。这些方法各有优缺点,开发者应根据项目需求、性能和兼容性等因素来选择最合适的方式。在实际项目中,通过实践和调试这些工具,可以更好地...
《Java调用Python脚本:Jython详解及应用》 在现代软件开发中,常常需要在不同的编程语言之间进行交互,比如Java与Python。Jython是这样一种工具,它允许Java开发者无缝地运行Python代码,使得Java应用可以利用...
在Java中想要调用python程序,可以加入python的依赖包。 Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython也有很多从CPython中继承的模块库。...
在描述中提到的链接是一个关于如何在Java中调用Python的博文,它可能详细介绍了如何使用Jython来实现Java和Python之间的交互。具体的步骤可能包括设置环境变量、创建Python脚本以及在Java代码中执行这些脚本。 总的...
总结来说,Java调用Python自定义函数主要依赖于如Jython这样的互操作性工具。通过这些工具,开发者可以充分利用各自语言的优势,实现灵活的跨语言编程。在Java后端应用中,这种技术常用于数据处理、科学计算或利用已...
在Jython中,你可以将Python脚本编译成`.pyc`文件,然后在Java中加载执行。首先,在Java中引入Jython库,然后创建PythonInterpreter对象,通过这个对象执行Python代码。 ```java import org.python.util.Python...
- Java集成:介绍如何在Jython中调用Java类库,实现Java与Python代码的混合编写。 - 应用实战:通过实例演示Jython在Web开发、数据处理等领域的应用。 **四、学习资源与实践** 1. **IBM Jython教程**:作为主要...
这表明,在使用Jython时,为了能够调用Java中的接口,我们需要创建对应的Python实现,并通过Jython将其转换为Java的接口类型。这样做的好处在于,可以在Python中实现业务逻辑,同时利用Java的强大生态系统和性能优势...
JythonBridge 提供了与 Py4J 类似的功能,但它基于 Jython,允许直接在 Java 中运行 Python 代码,而不仅仅是调用 Python 脚本。 6. **使用 JPype**: JPype 是一个开源项目,它实现了 Python 和 Java 之间的互...
本项目名为“java调用python入门详解”,主要展示了如何在Java程序中调用Python脚本进行数据处理或其他功能实现。下面将详细介绍这个项目中的关键知识点。 1. **Jython**: 为了在Java环境中运行Python代码,我们...
使用Jython可以实现Java调用Python的方法,例如,在Java中执行Python语句。下面是一个简单的例子: Java代码: ```java PythonInterpreter interpreter = new PythonInterpreter(); interpreter.exec("days=('mod',...
3. **Java与Python互操作**:为了在Java中调用Python的RapidOCR API,我们需要使用Java的Python接口,例如Jython或Java的PythonBridge库。不过,更常见的方式是使用Java的`Runtime.exec()`方法执行Python脚本。这将...
在实际应用中,Jython可以被Java应用调用,例如通过Java的ScriptEngine接口执行Python脚本,或者通过Jython API直接创建Python对象。这样,开发者可以在Java程序中动态地执行Python代码,或者使用Python库处理特定...
但是,Jython并不完全兼容标准CPython(Python的默认实现),这意味着不是所有的Python库都能在Jython中运行。 2. **JavaBridge / JPype**: 这些工具允许Python通过Java的JNI(Java Native Interface)与Java交互。...
然而,由于Python的动态性,Jython中的类型检查是在运行时进行的。 4. **集成Java库**:Jython可以直接导入Java类,这允许开发者使用Java的API,如Swing或JavaFX来创建图形用户界面,或者调用Java的网络、数据库等...
Jython 是一种能够运行在 Java 平台上的 Python 解释器,它允许开发者直接使用 Python 代码调用 Java API,同时也支持 Java 代码调用 Python 的功能。本文档旨在帮助初学者了解如何在 Java 应用程序中集成 Jython,...