Выполнение программы py4j java - python через командную строку - PullRequest
0 голосов
/ 23 марта 2020

Я работаю над проектом, в котором мне нужно вызвать Java объекты в python коде, для этого я использую py4j. Когда я запускаю программу java из Netbeans, а затем python в командной строке, ошибки не возникает, и я получаю желаемый результат. Но когда я пытаюсь запустить код Java в командной строке, а затем запустить код python в другом окне python. Я ошибаюсь, может кто-нибудь объяснить мне причину и что я здесь делаю не так. Я преобразовал java проект в файл JAR через NetBeans. Я использую python 3.7, java 13.0.2, os windows 10, py4j версия 0.10.9

для выполнения java кода: java -jar FILENAME.jar

Я получаю ошибку: В java окне:

java.io.FileNotFoundException: .\model\model.bin (The system cannot find the path specified)
        at java.base/java.io.FileInputStream.open0(Native Method)
        at java.base/java.io.FileInputStream.open(FileInputStream.java:213)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:155)
        at java.base/java.io.FileInputStream.<init>(FileInputStream.java:110)
        at alpx.AlpX.init(AlpX.java:82)
        at alpx.AlpX.findNes(AlpX.java:787)
        at ner.NER.nlp(NER.java:42)
        at jdk.internal.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
        at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)
        at py4j.Gateway.invoke(Gateway.java:282)
        at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
        at py4j.commands.CallCommand.execute(CallCommand.java:79)
        at py4j.GatewayConnection.run(GatewayConnection.java:238)
        at java.base/java.lang.Thread.run(Thread.java:830)

В Python окне:

error py4j An error occurred while calling t.nlp.
: java.lang.NullPointerException
        at alpx.AlpX.tag(AlpX.java:776)
        at alpx.AlpX.findNes(AlpX.java:791)
        at ner.NER.nlp(NER.java:42)
        at jdk.internal.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at py4j.reflection.MethodInvoker.invoke(MethodInvoker.java:244)
        at py4j.reflection.ReflectionEngine.invoke(ReflectionEngine.java:357)
        at py4j.Gateway.invoke(Gateway.java:282)
        at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
        at py4j.commands.CallCommand.execute(CallCommand.java:79)
        at py4j.GatewayConnection.run(GatewayConnection.java:238)
        at java.base/java.lang.Thread.run(Thread.java:830)
...