我有一个 python 脚本“simplepythonagent.py”,它定义了一个类 SimplePyAgent
,我正在尝试在 Java 程序中调用该类。在我的 Java 程序中,我通过调用 agent.setAgent(newagents.ExampleJavaAgent());
来调用类似的类。我能够将“simplepythonagent.py”编译为“simplepythonagent.pyc”,但它不会变成“simplepythonagent.java”,它根本不会出现在 Eclipse 中。如何将 .pyc 中定义的类变成 .java?
额外细节:我使用>>> importcompileall
然后>>>compileall_compile_dir('pythonscripts')
将.py编译为.pyc。我这样做是因为不再支持 jythonc。
信息:我在 mac osx 10.9 上使用 Eclipse Luna,使用 java 版本 1.7 和 python 版本 2.7。
更新:我也可以使用 >>> jython -mcompileall/path/to/pythonscripts
进行编译,结果是“simplepythonagent$py.class”。如何让这个 .class 文件在 Eclipse 中显示为 .java 文件?
最佳答案
从 .class 反编译(有许多可用的反编译器)可以工作,但随后 .java 文件会再次编译。就我的目的而言,这是多余的。我选择创建 jython object factory 。它实现起来很简单,并且可以推广到我项目中的所有 python 脚本中反复使用:)
关于java - 如何将pyc(python编译文件)转换为java?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29239985/