0

我正在尝试使用 JEP 与来自 Java 的 python 模块进行通信。我在 MacOS catalina 上使用 intellij 我已经完成了以下操作

  1. 使用pip安装JEP,安装目录为/Applications/anaconda3/lib/python3.8/site-packages/jep/

  2. 在 .zshrc 文件中添加路径作为环境变量

    导出 LD_LIBRARY_PATH='/Applications/anaconda3/lib/python3.8/site-packages/jep/'

  3. 像这样在 jvm 参数中添加路径 在此处输入图像描述

  4. 我在这一行收到错误(来自 intellij) Jep jep = new Jep();

    我得到的错误是这个

    Exception in thread "main" java.lang.UnsatisfiedLinkError: /Applications/anaconda3/lib/python3.8/site-packages/jep/libjep.jnilib:dlopen(/Applications/anaconda3/lib/python3.8/site-packages/jep/libjep.jnilib, 1): Library not loaded: @rpath/libpython3.8.dylib

  5. 如果我将代码打包在 jar 中,并将其作为 java -jar somejar.jar 运行它会出错

    Error: Unable to initialize main class Application Caused by: java.lang.NoClassDefFoundError: jep/JepException

6.我的 build.gradle 文件是这样的

dependencies {
    // https://mvnrepository.com/artifact/black.ninia/jep
    implementation group: 'black.ninia', name: 'jep', version: '3.8.2'
    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
}
4

0 回答 0