Импорт Pellet Reasoner в Йену

Я пытаюсь импортировать Pellet reasoner в Jena, последняя версия Pellet - это 2.3.1, где я могу ' t найти какой-либо файл .jar для импорта. Кроме того, я следил за Wiki / FAQ, чтобы запустить файл bash в папке выпуска в Mac OS. Сообщение об ошибке отображается как:

Ошибка: невозможно получить доступ к jarfile lib / pellet-cli.jar

Кажется, что мне нужно самостоятельно экспортировать файл jar и импортировать его на свое рабочее место в Йене, что я и сделал, но когда я использую OntModel model = ModelFactory.createOntologyModel( PelletReasonerFactory.THE_SPEC );, появляется исключение Java.

Сообщение об исключении:

java.lang.NoClassDefFoundError:
org/mindswap/pellet/utils/progress/ProgressMonitor
at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:95)
at org.mindswap.pellet.jena.PelletReasoner.bind(PelletReasoner.java:1)
at com.hp.hpl.jena.ontology.impl.OntModelImpl.generateGraph(OntModelImpl.java:2852)
at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:142)
at com.hp.hpl.jena.ontology.impl.OntModelImpl.<init>(OntModelImpl.java:131)
at com.hp.hpl.jena.rdf.model.ModelFactory.createOntologyModel(ModelFactory.java:300)
at smarthome.ReasoningController.main(ReasoningController.java:113)
at smarthome.SmartHomeGUI.main(SmartHomeGUI.java:34)
... 11 more
Caused by: java.lang.ClassNotFoundException: org.mindswap.pellet.utils.progress.ProgressMonitor
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 19 more` 

Как я могу исправить эту проблему? Заранее спасибо.


person Ev3rlasting    schedule 07.04.2015    source источник
comment
Возможно, вам придется проверить свой импорт, если вы используете гранулы с Jena. Вы должны использовать фабрику рассуждений, разработанную для Jena, для вашего примера кода этот импорт работает для меня: import org.mindswap.pellet.jena.PelletReasonerFactory; import com.hp.hpl.jena.ontology.OntModel; import com.hp.hpl.jena.rdf.model.ModelFactory;   -  person Hatim    schedule 07.04.2015


Ответы (2)


Пользователь ignazio1977 в группах Google создал репозиторий git, из которого вы можете загрузить архив .zip с различными банками, необходимыми для pellet. Похоже, вам не хватает пакета класса, и это может решить вашу проблему.

https://github.com/ignazio1977/pellet/blob/releases/pellet-distribution-2.3.2-SNAPSHOT-dist.zip

person Batman22    schedule 28.05.2015

во-первых, ответ @Pranay мертв. Однако с тех пор и Jena, и Pellet были обновлены. Сейчас Jena находится в версии 2.13.x, а pellet - в 2.4.0. Поэтому, если вы хотите обновиться до последней версии, вам придется создать новый файл pellet .jar. Обратитесь к этому файлу https://github.com/Complexible/pellet/blob/master/pom.xml
, чтобы узнать все зависимости и их соответствующие версии.

person Kunal Khaladkar    schedule 27.08.2015
comment
Последняя версия Pellet - v2.4.0-SNAPSHOT на момент написания этой статьи, а не 4.0.0. А филиал Игнациос был объединен с Пеллетом. - person F Lekschas; 03.09.2015