问题描述
我正在尝试将 python 脚本作为用户的输入并执行它。我使用 maven 作为项目经理。
<dependency>
<groupId>org.python</groupId>
<artifactId>jython-standalone</artifactId>
<version>2.7.2</version>
<scope>provided</scope>
</dependency>
我已经从 jython 转移到 jython-standalone 包,正如在类似问题的多个答案中所建议的那样。即使在尝试运行一个简单的 python 脚本时,我也不断收到错误消息:
import os
import uuid
import sys
# from subprocess import Popen,PIPE
import subprocess
def process(item,interceptor):
logger.info("Starting subprocess...")
javax.script.ScriptException: ImportError: No module named os in <script> at line number 1
at
我无法理解问题以及如何解决。
解决方法
也许您需要创建一个封装 jython 独立 jar 的 OSGi 包? (例如:https://karaf.apache.org/manual/latest-2.x/developers-guide/creating-bundles.html)