В моем Bundle я пытаюсь отобразить символы utf-8, полагаю, моя кодировка по умолчанию - Cp1250, и происходит странное поведение:
public class Activator implements BundleActivator {
public void start(BundleContext context) throws Exception {
System.out.println("ąśżłóę"); // this is what should've been displayed
System.out.println("������"); // this is the utf8 above encoded to cp1250
}
public void stop(BundleContext context) throws Exception {
}
public static void main(String args[]){
System.out.println("ąśżłóę"); //utf-8
System.out.println("������"); //cp1250
}
}
Вывод, когда я запускаю main, я получаю то, что ожидал:
ąśżłóę
ąśżłóę
Выводится, когда я запускаю Bundle из OSGi Framework, символы кодируются от utf-8 до cp1250.Таким образом, результат совершенно противоположен.
ąśżłóę
ąęźł
Итак, мой вопрос: как с этим бороться?Должен ли я написать приложение в cp1250 вместо utf-8?Или есть возможность изменить кодировку osgi по умолчанию?