2015-06-08 2 views
3

Я пытаюсь использовать библиотеку Parso Java для чтения в файле .sas7bdat. Моя цель состоит в том, чтобы преобразовать его в CSV, а затем впоследствии манипулировать им. Направления, которые я выполняю для его настройки, - here. У меня есть файл parso .jar, импортированный в Eclipse успешно. Однако, когда я пытаюсь создать экземпляр, как так:Parso Java Library Issue

InputStream streamIn = new FileInputStream(sasFile); 
    SasFileReader sasFileReader = new SasFileReader(streamIn); 

Я получаю это исключение:

Exception in thread "main"  
    java.lang.NoClassDefFoundError:org/slf4j/LoggerFactory 
at com.ggasoftware.parso.SasFileReader.<clinit>(SasFileReader.java:30) 
at sas7bdatFileConverter.convert(sas7bdatFileConverter.java:25) 
at sas7bdatFileConverter.main(sas7bdatFileConverter.java:11) 
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory 
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) 

я бы очень признателен за любые намеки на то, что я мог бы быть здесь отсутствует. Спасибо!

+1

Вы используете зависимость Maven, или вы напрямую импортируете .jar? В первом случае это сработает. Для последнего вам также необходимо включить файл jff slf4j (и это либо slf4j-api, который на самом деле ничего не делает, или, по крайней мере, slf4j-simple, который входит в консоль). –

+1

Вам нужно slf4j на пути к вашему классу во время выполнения. –

+1

Вы оба были правы, спасибо! У меня еще нет репутации 15, но я не уверен в себе ... Я ценю это независимо. –

ответ

2

Вы упомянули, что вы должны использовать зависимость Maven (которая автоматически загружает все необходимые файлы jar), но похоже, что вы напрямую импортируете файл jar.

Поскольку вы не используете Maven, вам также нужно включить файл jf slf4j (и это либо slf4j-api, который на самом деле ничего не делает, или, по крайней мере, slf4j-simple, который входит в систему на консоли).

Просто зайдите на http://www.slf4j.org/ и загрузите новейший пакет, а затем вынуть slf4j-api-<version>.jarslf4j-simple-<version>.jar, если вы хотите увидеть протоколирование библиотеки Parso в консоль).

В конечном счете, определенно узнайте, как использовать Maven, это значительно облегчит вашу боль при управлении библиотекой.