【问题标题】:Jython: Import Modules From Other Sources (DB for instance)?Jython:从其他来源(例如 DB)导入模块?
【发布时间】:2011-05-20 17:12:06
【问题描述】:

我正在使用 Java 程序加载和运行 Jython 脚本 - 使用 org.python.util.PythonInterpreter。

我将 Jython 脚本存储在数据库中:目前我必须在运行 Python 脚本之前将其提取到文件系统中 - 以确保脚本中的任何“导入”语句都能正常工作。

有没有办法避免这个提取步骤:也就是说 - 有没有办法连接到 Python 解释器以拦截导入并调用 Java 方法(这将从数据库加载 jython 源)?

【问题讨论】:

    标签: module import load hook jython


    【解决方案1】:

    您可以从 Python 或 Java 添加导入器(Jython 代码中有一个标准的从类路径导入的导入器:org.python.core.ClasspathPyImporter;它实现的 org.python.core.util.importer 接口中还有一些 Javadocs,这可能很有用)。代码比较简单;参见PEP 302

    【讨论】:

    • 感谢 (+1) - 我暂时推迟接受的答案:想看看是否有人可以提供我实际需要实施的简化示例 - 从javadocs 我真正需要做什么!干杯
    猜你喜欢
    • 2017-10-05
    • 2013-01-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多