从Jython 2.5中的Java代码访问Python对象

从Jython 2.5中的Java代码访问Python对象,java,compiler-construction,jython-2.5,Java,Compiler Construction,Jython 2.5,我有一个使用Jython2.1的应用程序。 在应用程序中,我使用jythonc将python脚本转换为java类,然后像其他应用程序一样将这些类包含在我的webapp中。 因此,我能够将包名分配给python脚本,并像访问任何其他java类一样访问这些类 现在我计划迁移到Jython2.5。Jython2.5已经删除了对jythonc的支持。 所以我试着用 jython -m compileall /path/to/my/python/scripts. 当我这样做时,我会在同一个文件夹中获得

我有一个使用Jython2.1的应用程序。 在应用程序中,我使用jythonc将python脚本转换为java类,然后像其他应用程序一样将这些类包含在我的webapp中。 因此,我能够将包名分配给python脚本,并像访问任何其他java类一样访问这些类

现在我计划迁移到Jython2.5。Jython2.5已经删除了对jythonc的支持。 所以我试着用

jython -m compileall /path/to/my/python/scripts. 
当我这样做时,我会在同一个文件夹中获得所有编译的字节码文件。每个文件的名称都类似于myclass$py.class(其中我的python文件是myclass.py)

我的问题-

  • 首先,我可以在另一个普通java中访问这些类吗 上课
  • 如果是,我应该使用什么类名?当我像新的一样使用它的时候 myclass()我的代码无法编译
  • 有没有办法,我可以分配/强制一个包名或类名 对于使用compileall生成的字节码
  • 注-

    • 我需要升级到jython 2.5,因为我需要更新版本的 它支持的python
    • 我想坚持预编译 python代码转换成字节码,因为我想在 字节码。因此,对象工厂方法只是一个 终极手段我假设对象工厂方法不允许 让我处理生成的字节码

    非常感谢您的帮助。

    无法回答您的大部分问题,因为我不使用Python,但是。。。给定生成的类名,您应该能够将Java类实例化为
    new myclass().new py()@Perception谢谢你的帮助。我的问题似乎没有真正的解决办法。这是我能到达的最近的地方。我采用了类似的方法来解决这个问题,但我的python代码在类、继承等方面要复杂得多。现在我决定继续使用Jython 2.1,稍后再讨论。@Anupama在这方面有进展吗?如果是,请回答您的问题:)