Как получить одинаковое состояние jar для нескольких модулей nbm?

В моем приложении платформы NetBeans есть два модуля nbm A и B и один проект jar . Модули NB зависят от JAR-файла, который содержит одноэлементный класс с именем Engine. Когда я обращаюсь к классу Engine из модуля A, создается и возвращается объект Engine. Поэтому я ожидаю уже созданный объект Engine, когда я вызываю тот же класс Engine из модуля B. Но он снова создает новый объект Engine и возвращается.

===баночный модуль===

      Class Engine
{
private static Engine single_instance= null;
private Engine(){}

public static Engine getInstance() 
    { 
        if (single_instance == null) 
{
            single_instance = new Singleton(); 
  }
        return single_instance; 
    } 

===модуль А===

      System.out.println(Engine.getInstance());// prints object address 1

===модуль Б===

      System.out.println(Engine.getInstance());// prints object address 2

Я хочу получить тот же объект из вызова модуля B, поскольку jar является общим ресурсом для этих двух модулей. Каков правильный способ обмена объектами между двумя nbm через одну банку?

1 ответ

Попробуйте реализовать Engine как ServiceProvider, например UpperCaseFilter, а затем используйте Lookup в следующем модуле, чтобы получить реализацию.

https://platform.netbeans.org/tutorials/nbm-maven-quickstart.html

Другие вопросы по тегам