Проблема в использовании org.apache.ddlutils.DdlUtilsException - PullRequest
1 голос
/ 11 февраля 2011

Я пытаюсь использовать пакет org.apache.ddlutils для чтения метаданных базы данных. Я написал следующий метод:

public static void readMetaData(DataSource dataSource) throws DdlUtilsException{

    final Platform platform = PlatformFactory.createNewPlatformInstance(dataSource);
}

Но оператор выбрасывает DdlUtilsException дает следующую ошибку:

Нет исключения типа DdlUtilsException, которое может быть сгенерировано; тип исключения должен быть подклассом Throwable

Я просто не понимаю причину этой ошибки, потому что API на http://db.apache.org/ddlutils/api/org/apache/ddlutils/DdlUtilsException.html четко гласит следующее:

java.lang.Object
  extended by java.lang.Throwable
      extended by java.lang.Exception
          extended by java.lang.RuntimeException
              extended by org.apache.commons.lang.exception.NestableRuntimeException
                  extended by org.apache.ddlutils.DdlUtilsException

Пожалуйста, совет.

Ответы [ 2 ]

3 голосов
/ 11 февраля 2011

Я предполагаю, что у вас есть другой класс с именем DdlUtilsException где-то - возможно, в пакете верхнего уровня, учитывая, что компилятор не упоминает полное имя пакета.Если вы используете Eclipse или что-то подобное, попробуйте перейти к объявлению класса.

РЕДАКТИРОВАТЬ: Хорошо, судя по вашему комментарию, вы не включаете различные зависимости.Убедитесь, что вы загрузили DdlUtils-1.0-bin.zip, и все зависимости находятся в каталоге lib.Мне не сразу понятно, нужны ли вам все из них, но вы могли бы также использовать их все для начала, а затем удалить то, что вам не нужно.

1 голос
/ 11 февраля 2011

Похоже, что другой класс 'org.apache.commons.lang.exception.NestableRuntimeException' находится в commons-lang.Скачайте и добавьте эту банку, и она должна работать.Проверьте документы для DDL Utils и посмотрите, от чего еще это зависит.

...