Я пытаюсь использовать PF4J в существующей кодовой базе.Я попытался перенести все необходимое из демонстрационных плагинов и приложений в мой существующий проект Maven.Я сравнил демо и мой код и не могу найти ничего другого.И все же, когда я собираю файл .jar моего плагина, в сгенерированном файле extensions.idx есть комментарий, в котором говорится, что он генерировал PF4J, а в остальном он пустой.Там должна быть ссылка на внутренний класс моего плагина, но это не так.В демо-плагинах есть.
Я предполагаю, что это проблема с моей установкой Maven (один из моих файлов pom), но я посмотрел и посмотрел, и не могу понять это,Вот файл Java для моего плагина:
package com.inlet.ifserver.plugin.reaper;
import com.inlet.plugin.InletFetchReaper;
import org.apache.commons.lang.StringUtils;
import org.pf4j.Extension;
import org.pf4j.Plugin;
import org.pf4j.PluginWrapper;
import org.pf4j.RuntimeMode;
/**
* @author Decebal Suiu
*/
public class ReaperAPlugin extends Plugin {
public ReaperAPlugin(PluginWrapper wrapper) {
super(wrapper);
}
@Override
public void start() {
System.out.println("WelcomePlugin.start()");
// for testing the development mode
if (RuntimeMode.DEVELOPMENT.equals(wrapper.getRuntimeMode())) {
System.out.println(StringUtils.upperCase("WelcomePlugin"));
}
}
@Override
public void stop() {
System.out.println("WelcomePlugin.stop()");
}
@Extension
public static class ReaperA implements InletFetchReaper {
@Override
public void reap() {
System.out.println("ReaperA");
}
}
}
Я предполагаю, что мой код не сканируется, чтобы найти аннотацию @Extension.Я не знаю, как это работает.
Я надеюсь, что другие столкнулись с этой проблемой и знают что-то простое, что я пропустил.Может кто-нибудь сказать мне, почему это происходит?Если кто-нибудь может дать мне какое-либо представление о том, как Maven создан для создания файла extensions.idx в создаваемом им файле .jar, это может привести меня к ответу.
TIA за любую помощь!