Heritrix 3.2.0: Написание и добавление расширений
В настоящее время я работаю с Heritrix, и у меня есть стандартная установка (эта: http://builds.archive.org/maven2/org/archive/heritrix/heritrix/3.2.0/), и она отлично работает.
Но теперь я хочу написать и добавить свои собственные расширения, например, изменить приоритет URL-адресов, которые нужно сканировать, или просто извлечь. Я могу проверить код Java существующего экстрактора, но как я могу добавить его в сканер?
Я попытался экспортировать свой тестовый проект Java в файл JAR и поместил этот файл в папку lib Heritrix (где находятся другие библиотеки). Кроме того, я добавил бин в cxml-файл моей работы.
Но после запуска я получил эту ошибку: 2014-11-07T19:51:40.296Z SEVERE Не удалось создать экземпляр класса бина [myModule.TestClass]: конструктор по умолчанию не найден; вложенным исключением является java.lang.NoSuchMethodException: myModule.TestClass.(); Не удается создать бин 'myModule.TestClass#0'
Это просто extractorHTML, переименованный в новый проект и экспортированный в jar-файл.
Есть идеи, что не так? Я прочитал всю документацию, но есть только объяснения, как писать расширения, а не как его добавлять?
Приветствую и спасибо:-)
1 ответ
Я думаю, что проблема в том, что загрузчик классов требует конструктор по умолчанию (конструктор - который не принимает аргументов) Добавить конструктор по умолчанию
public YourClass() { }
и необходимые методы получения и установки для установки переменных-членов.