2017-07-30 49 views
0

我寫了一個名爲jug.java的java文件,它使用jython和PythonInterpreter;這是代碼:無法找到Jython類

import org.python.util.PythonInterpreter; 
import org.python.core.PyObject; 

public class Jug{ 
    public void main(String[] args) { 
     PythonInterpreter interpreter = new PythonInterpreter(); 
     interpreter.exec("import InstaFeed\nAPI=InstaFeed.InstaFeed(someusername, somepassword)"); 
     PyObject someFunc = interpreter.get("API.like(mediaId"); 
     PyObject result = someFunc.__call__(new PyInteger(15)); 
     String realResult = (String) result.__tojava__(String.class); 
    } 
} 

當我嘗試使用這個命令執行它:

javac Jug.java

這些錯誤發生:

Jug.java:1: error: package org.python.util does not exist 
import org.python.util.PythonInterpreter; 
        ^
Jug.java:2: error: package org.python.core does not exist 
import org.python.core.PyObject; 
        ^
Jug.java:6: error: cannot find symbol 
     PythonInterpreter interpreter = new PythonInterpreter(); 
     ^
    symbol: class PythonInterpreter 
    location: class Jug 
Jug.java:6: error: cannot find symbol 
     PythonInterpreter interpreter = new PythonInterpreter(); 
              ^
    symbol: class PythonInterpreter 
    location: class Jug 
Jug.java:8: error: cannot find symbol 
     PyObject someFunc = interpreter.get("like"); 
     ^
    symbol: class PyObject 
    location: class Jug 
Jug.java:9: error: cannot find symbol 
     PyObject result = someFunc.__call__(new PyInteger(15)); 
     ^
    symbol: class PyObject 
    location: class Jug 
Jug.java:9: error: cannot find symbol 
     PyObject result = someFunc.__call__(new PyInteger(15)); 
               ^
    symbol: class PyInteger 
    location: class Jug 
7 errors 

而且安裝的Jython。 我該如何解決這個錯誤?

更多信息

已經我已經安裝了Jython的使用終端:

sudo apt install jython 

它成功地安裝Jython的。 但每當我嘗試從源安裝:

sudo java -jar jython-installer-2.7.0.jar 

這些錯誤發生:

# 
# A fatal error has been detected by the Java Runtime Environment: 
# 
# SIGSEGV (0xb) at pc=0x00007f0f6e654009, pid=31088, tid=31089 
# 
# JRE version: OpenJDK Runtime Environment (9.0) (build 9-internal+0-2016-04-14-195246.buildd.src) 
# Java VM: OpenJDK 64-Bit Server VM (9-internal+0-2016-04-14-195246.buildd.src, mixed mode, tiered, compressed oops, g1 gc, linux-amd64) 
# Problematic frame: 
# C [libjava.so+0x1d009] JNU_GetEnv+0x19 
# 
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %P" (or dumping to /home/muhammad/Downloads/core.31088) 
# 
# An error report file with more information is saved as: 
# /home/muhammad/Downloads/hs_err_pid31088.log 
# 
# If you would like to submit a bug report, please visit: 
# http://bugreport.java.com/bugreport/crash.jsp 
# The crash happened outside the Java Virtual Machine in native code. 
# See problematic frame for where to report the bug. 
# 
Aborted (core dumped) 

回答

1

包org.python.util應在jython.jar存在你缺少

你可以從jython下載

如果存在將它添加到您的命令(而不是javac Jug.java

java -cp jython.jar:. Jug 
+0

我無法從源碼安裝,請閱讀我剛添加的信息。 –

+0

您是否嘗試過調用java -cp jython-installer-2.7.0.jar :.壺? – user7294900

+0

是和輸出:錯誤:無法找到或加載主類Jug –