Я использую Stanford Parser с pyjnius. Используя функцию autoclass
pyjnius, я могу использовать классы java из парсера. Однако, когда я пытаюсь десериализовать что-то, имеющее эти классы, я получаю ClassNotFoundException
. Как я могу убедиться, что у jvm есть доступ к классу при десериализации (вызов readObject
)?
Это прекрасно работает
ArrayList = autoclass('java.util.ArrayList')
ScoredObject = autoclass('edu.stanford.nlp.util.ScoredObject')
sensTrees = ArrayList()
sensTrees.add(ScoredObject(ArrayList(), 5))
outFile = FileOutputStream('javaParses.ser')
oos = ObjectOutputStream(outFile)
oos.writeObject(sensTrees)
Но это выдает ошибку ниже
inFile = FileInputStream('javaParses.ser')
ois = ObjectInputStream(inFile)
Docs = ois.readObject() // this line throws the error
Error
java.lang.ClassNotFoundException: edu.stanford.nlp.util.ScoredObject