Blackberry: ошибка проверки при использовании проекта библиотеки в качестве внешнего банка

Я создал два проекта Blackberry в подключаемом модуле Blackberry Java для Eclipse, т.е. MyProjectApp (устанавливается как проект приложения) и MyProjectLib (устанавливается как проект библиотеки). Теперь я создал простой класс MainScreen, как показано ниже:

public class SampleScreen  extends MainScreen {

    public SampleScreen (){
        RichTextField topbar = new RichTextField("hello world");
        add(topbar);
    }

}

Теперь я экспортирую MyProjectLib как файл Jar и добавляю его в MyProjectApp как внешний Jar. Теперь я хочу запустить SampleScreen, используя это:

public class MyProjectMain extends UiApplication{

     public static void main(String[] args) {

         MyProjectMain theApp = new MyProjectMain();       
        theApp.enterEventDispatcher();
    }

    public LangHostMain(){        
        // Push a screen onto the UI stack for rendering.
         pushScreen(new SampleScreen());
    }

}

Выдает следующую ошибку:

Модуль MyProjectApp имеет ошибки проверки. Ошибка при запуске MyProjectApp: модуль MyProjectApp имеет ошибки проверки.

Но если я переместил класс SampleScreen в MyProjectApp, он работает нормально. В чем проблема экспортировать банку и использовать ее? Какой тип проверки необходим?


person dev_android    schedule 28.03.2012    source источник


Ответы (2)


Есть инструмент preverify.exe; он гарантирует, что байт-код совместим с платформой BlackBerry.

Компилятор BlackBerry rapc использует формат байт-кода java 1.3 при компиляции приложения в файл cod.

Если вы создали файл jar в другом формате байт-кода, например, путем компиляции с помощью javac версии 7.0, то этот файл jar не пройдет проверку.

Попробуйте скомпилировать файл jar с ключом, чтобы сделать его совместимым с байт-кодом VM 1.3,

Используйте комбинацию ключ-значение -target 1.3 для компилятора java, чтобы создать файл jar.

person Community    schedule 28.03.2012
comment
Как предварительно проверить файл Jar, когда я использую Eclipse с подключаемым модулем Blackberry? - person dev_android; 28.03.2012
comment
preverify.exe находится в папке, в которой установлен подключаемый модуль Eclipse. Запустите поиск этого файла во всех вложенных папках. И проверьте эту инструкцию: getablogger.blogspot .com/2009/09/ - person ; 28.03.2012

Короче говоря, использование jar-файлов в BlackBerry — это беспорядок.

Ваша банка должна быть предварительно проверена. У меня было так много проблем в прошлом, когда я пытался сделать это с помощью плагина eclipse, поэтому я обычно делаю это с помощью командной строки. Внутри вашего пути JDE, обычно по адресу:

C:\Program files\Research In Motion\BlackBerry JDE x.x.x\bin

Есть программа под названием preverify. После предварительной проверки jar-файла в указанном выходном каталоге создается еще один предварительно проверенный jar-файл. Это файл, который вы должны импортировать в путь сборки.

person Mister Smith    schedule 28.03.2012