当前位置: 首页 > 知识库问答 >
问题:

使用Jython在Java中运行Python程序

易雅畅
2023-03-14

我编写了一个由五个。py脚本文件组成的Python程序。我希望从Java应用程序中执行这些python脚本的主要部分。

我有什么选择?使用PythonInterperter不起作用,例如,datetime模块不能从Jython中加载(我不希望用户为这些依赖项的工作而确定他的Python路径)。

我使用Jython的CompileAll将整个文件夹编译为。class文件。我能以某种方式嵌入这些。class文件以从Java应用程序中执行主文件吗?或者我应该如何继续?

共有1个答案

施鸿
2023-03-14

看一下Java中的ProcessBuilder类:https://docs.oracle.com/javase/7/docs/api/java/lang/ProcessBuilder.html。

java构造函数中使用的命令应该与在命令行中键入的命令相同。例如:

Process p = new ProcessBuilder("python", "myScript.py", "firstargument").start();

(流程构建器执行与pythonsubprocess模块相同的操作)。

看一下通过processbuilder运行脚本

N.B.至于问题的Jython部分,如果你去Jython网站(看看他们网站www.Jython.org的常见问题部分)。检查条目“从Java使用jython”。

 类似资料:
  • 我想使用jython执行一个Python函数,这个函数位于我的一个Java Python项目中。https://smart bear . com/blog/test-and-monitor/embedding-jython-in-Java-applications/给出了示例代码。但是在我的场景中,我得到了下面的异常。 线程“main”回溯中出现异常(最近一次调用是最后一次):文件“”中第1行,导

  • 我想用java中的参数调用python程序。但我的输出是空白的。代码在这里。 Python代码如下: java代码在这里: 我想输出30,有人能告诉我哪里出错了吗?

  • 问题内容: 我有一个演示文件:。在Windows控制台中,我可以使用以下命令运行文件: 我该如何在Python Shell中执行文件? 问题答案: 对 python 2 使用execfile: 对 python 3 使用exec

  • 问题内容: 我 必须 使用商业Java库,并且想从Python中做到这一点。Jython非常强大,在后面有一些发行版本的情况下,我对此表示满意。但是,我 也想 使用NumPy,它显然不适用于Jython。CPype和Java数字库等选项不受欢迎。前者基本上已经死了。后者大多不成熟,缺乏NumPy的易用性和广泛接受性。我的问题是:如何使Jython和Python代码互操作?从Cpython或其他方式

  • 问题内容: 我对Selenium完全陌生。我想在以下代码中执行一个javascript代码段(如代码中所注释),但是无法执行。请帮忙。 如果我使用- 它错误地显示为- 问题答案: 尝试代替。 要返回值,只需在传递给方法的字符串中使用JavaScript关键字,例如

  • 我试图使用jython在java中执行python脚本。重要的是,我需要使用jython将命令行参数传递给脚本,例如myscript。py arg1 arg2 arg3。这里有一个类似的问题:将参数传递到Java中的Python脚本 这没有得到完全的回答(所有解决方案都不起作用)。 我的代码现在看起来像这样: 然而,这似乎没有向python脚本传递任何参数。对如何正确地做这件事有什么建议吗?这一定