背景
Jep 是一个在 Java 中调用 Python 的库,原理是通过 JNI 来调用 CPython。
Jep 支持 python 2.7, 3.3 - 3.7。
噢,为什么没有尝试下 Jython? 因为我这边需要用 Python3.x,目前 Jython 仅支持到 python 2.7.1。
初体验
编译 Python
需要也生成 .so
文件,故加上 --shared
参数
./configure --shared
需要编译时加上参数 -fPIC
,故编辑 Makefile
文件,修改为
CC= gcc -pthread -fPIC
CXX= g++ -pthread -fPIC
然后编译,安装
make
sudo make install
安装 jep
/usr/local/bin/pip3 install jep
代码
pom.xml
pom.xml
<dependencies>
<dependency>
<groupId>black.ninia</groupId>
<artifactId>jep</artifactId>
<version>3.8.2</version>
</dependency>
</dependencies>
MainJep.java
运行
java -jar testJep-0.0.1-SNAPSHOT/testJep-0.0.1-SNAPSHOT.jar
Hello World
Hello World
ello Worl
sys.version_info(major=3, minor=7, micro=0, releaselevel='final', serial=0)
参考
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于