Как Bundle может получить доступ к выходному потоку OSGi? - PullRequest
1 голос
/ 11 октября 2011

Есть ли способ для пакета напечатать строку в потоке вывода OSGi?Я имею в виду, как System.out.println("String");.Вместо этого я хочу, чтобы пакет печатал свои строки в этом потоке.

    public void start(BundleContext bundleContext) throws Exception {
    Activator.context = bundleContext;
    System.out.println("Hello World!"); // I want to print this string in osgi console.
}

Видите ли, если я запущу среду OSGi, она напечатает свои ответы на команды в консоли Java, где также печатается System.out.Я печатаю его выходные данные в JTextArea, поэтому я хочу, чтобы пакеты также могли печатать там (выводить строки в потоке вывода OSGi Console).в этом случае мне нужен способ доступа к выходному потоку OSGi.

Ответы [ 2 ]

2 голосов
/ 12 октября 2011

Если я правильно вас понимаю, ваша JTextArea служит в качестве консоли или представления для вывода на консоль. Поэтому я бы предложил просто отобразить поток System.out в этой JTextArea. Вот пример для достижения этого: http://unserializableone.blogspot.com/2009/01/redirecting-systemout-and-systemerr-to.html

0 голосов
/ 11 октября 2011

Думаю, я не понимаю вопроса. Это напишет туда, куда направлен System.out. Если вы запускаете OSGi-фреймворк из командной строки, это должно привести к записи в терминальную сессию.

...