Сгенерируйте пакет Java и создайте приложение Java

Поддерживаемые платформы: Windows®, Linux®, Mac

В этом примере показано, как создать Java® пакет, который использует MATLAB® функция. Можно интегрировать сгенерированный пакет в приложение Java. В этом примере также показано, как вызвать пакет Java из приложения Java. Целевая система не требует лицензионной копии MATLAB.

Создайте функцию в MATLAB

В MATLAB исследуйте код MATLAB, который вы хотите упаковать. В данном примере откройте makesqr.m расположен в matlabroot\ toolbox\javabuilder\Примеры\MagicSquareExample\MagicDemoComp.

 makesqr.m

В командной строке MATLAB введите makesqr(5).

Выходные выходы:

    17    24     1     8    15
    23     5     7    14    16
     4     6    13    20    22
    10    12    19    21     3
    11    18    25     2     9

Создайте приложение Java с помощью приложения Library Compiler

  1. На вкладке MATLAB Apps, в крайнем правом углу Apps раздела, щелкните стреле. В Application Deployment нажмите Library Compiler.

    Также можно открыть приложение Library Compiler из командной строки MATLAB путем ввода:

    libraryCompiler

  2. В Type разделе панели инструментов нажмите Java Package.

    В Library Compiler окне проекта приложения укажите файлы приложения MATLAB, которые вы хотите развернуть.

    1. В Exported Functions разделе панели инструментов нажмите.

    2. В Add Files окне перейдите к папке примера и выберите функцию, которую вы хотите упаковать. Нажмите Open.

    Функция добавляется в список экспортированных файлов функции. Повторите этот шаг, чтобы упаковать несколько файлов в одно и то же приложение.

    В данном примере перейдите к matlabroot\ toolbox\javabuilder\Примеры\MagicSquareExample\MagicDemoComp и выберите makesqr.m.

  3. В Packaging Options разделе панели инструментов решите, включать ли инсталлятор MATLAB Runtime в сгенерированное приложение, выбрав один из опций:

    • Runtime downloaded from web - сгенерируйте инсталлятор, который загружает MATLAB Runtime и устанавливает его вместе с развернутым приложением MATLAB. Можно задать имя файла установщика.

    • Runtime included in package - Сгенерируйте приложение, которое включает в себя инсталлятор MATLAB Runtime. Можно задать имя файла установщика.

      Примечание

      При первом выборе этой опции выводится запрос на загрузку программы установки MATLAB Runtime.

Настройка параметров пакета

  1. Поле Library Name автоматически заполняется makesqr как имя пакета. То же имя следует и за реализацией пакета.

  2. Проверьте, что функция, заданная в makesqr.m сопоставлен с Class1.

  3. Добавьте файлы MATLAB, чтобы сгенерировать образцы файлов драйвера Java. Несмотря на то, что файлы драйверов Java не нужны для создания пакетов, они используются, чтобы продемонстрировать, как Установить и реализовать Приложение Java MATLAB Generated.

    В Samples разделе выберите Create New Sample и нажмите makesqr.m. Файл MATLAB откроется для редактирования. Определите входные переменные как необходимые для вашего приложения, сохраните файл и вернитесь к Library Compiler приложению.Для получения дополнительной информации и ограничений смотрите Пример создания файла драйвера.

Настройка приложения и его внешнего вида

Можно настроить инсталлятор, настроить приложение и добавить дополнительные сведения о приложении следующим образом:

  • Library information - информация о развернутом приложении. Также можно настроить внешний вид приложения, изменив значок приложения и заставку. Сгенерированный инсталлятор использует эти сведения для заполнения установленных метаданных приложения. См. раздел Настройка установщика.

  • Additional installer options - путь установки по умолчанию для сгенерированного установщика и выбора пользовательского логотипа. См. раздел «Изменение пути установки».

  • Files required for your library to run - дополнительные файлы, необходимые для запуска сгенерированного приложения. Эти файлы включены в созданную программу установки приложения. См. «Управление необходимыми файлами в проекте компилятора».

  • Files installed for your end user - файлы, установленные вместе с вашим приложением.

    См. «Указание файлов для установки с приложением»

Упаковать приложение

  1. Чтобы сгенерировать упакованное приложение, нажмите Package.

    В диалоговом окне «Сохранение проекта» укажите местоположение для сохранения проекта.

  2. В диалоговом окне Package проверьте, что выбран Open output folder when process completes.

    Когда упаковочный процесс будет завершен, исследуйте сгенерированный выход.

    • В расположении целевой папки генерируются три папки: for_redistribution, for_redistribution_files_only, и for_testing.

      Для получения дополнительной информации о файлах, сгенерированных в этих папках, смотрите Файлы, сгенерированные После Упаковки Функций MATLAB.

    • PackagingLog.txt - Файл журнала, сгенерированный MATLAB Compiler™.

Создайте пакет Java используя compiler.build.javaPackage

Примечание

Если вы уже создали пакет Java с помощью приложения Library Compiler, можно пропустить этот раздел. Однако, если вы хотите узнать, как создать пакет Java из командного окна MATLAB с помощью программного подхода, следуйте этим инструкциям.

  1. Сохраните путь к makesqr.m файл, расположенный в matlabroot\ toolbox\javabuilder\Примеры\MagicSquareExample\MagicDemoComp.

    appFile = fullfile(matlabroot,'toolbox','javabuilder','Examples',...
        'MagicSquareExample','MagicDemoComp','makesqr.m');
  2. Сохраните следующий код в примере файла с именем makesqrSample1.m:

    x = 5;
    a = makesqr(x);

  3. Создайте пакет Java с помощью compiler.build.javaPackage функции и makesqr.m файл. Используйте аргументы имя-значение, чтобы добавить образец файла и включить подробный выход.

    buildResults = compiler.build.javaPackage('makesqr.m',...
    'SampleGenerationFiles','makesqrSample1.m',...
    'Verbose','on');

    The compiler.build.Results buildResults объекта содержит информацию о типе сборки, сгенерированных файлах и опциях сборки.

  4. Функция генерирует следующее в папке с именем makesqrjavaPackage в вашей текущей рабочей директории:

    • classes - Папка, содержащая файлы класса Java и развертываемый архивный файл CTF.

    • doc - Папка, содержащая HTML для всех классов в пакете.

    • example - Папка, содержащая файлы исходного кода Java.

    • samples - Папка, содержащая образец файла драйвера Java makesqrSample1.java.

    • GettingStarted.html - Файл, содержащий информацию об интеграции вашего пакета.

    • makesqr.jar - архивный файл Java.

    • mccExcludedFiles.log - Файл журнала, содержащий список функций тулбокса, не включенных в приложение. Для получения информации о не поддерживаемых функциях смотрите Функции, не поддерживаемые для компиляции.

    • readme.txt - Текстовый файл, содержащий информацию о необходимых условиях развертывания и списке файлов, подлежащих упаковке для развертывания.

    • requiredMCRProducts.txt - Текстовый файл, содержащий идентификаторы продуктов, требуемых MATLAB Runtime для запуска приложения.

    • unresolvedSymbols.txt - Текстовый файл, содержащий информацию о неразрешенных символах.

    Примечание

    Сгенерированный пакет не включает MATLAB Runtime или инсталлятор.

  5. Можно задать дополнительные опции в compiler.build команда при помощи одного или нескольких из следующих аргументов в виде имя-значение:

    • 'AdditionalFiles' - Путь к дополнительным файлам для включения в пакет.

    • 'AutoDetectDataFiles' - Флаг для автоматического включения файлов данных.

    • 'ClassName'- Имя класса Java.

    • 'DebugBuild' - Флаг для включения отладки символов.

    • 'OutputDir' - Путь к выходной директории, который содержит сгенерированные файлы.

    • 'PackageName'- Имя сгенерированного пакета.

    • 'SampleGenerationFiles'- MATLAB выборки файлов, используемых для генерации образцов файлов пакета Java. Для получения дополнительной информации см. Пример создания файла драйвера.

    • 'Verbose'- Флаг для отображения информации о прогрессе, указывающей на выход компилятора во время процесса сборки.

Установка и реализация сгенерированных MATLAB Приложения Java

После создания пакетов Java можно вызвать их из приложения Java. Созданное приложение Java использует образец кода драйвера Java, сгенерированный во время упаковки. Код драйвера Java вызывает пакеты Java, и он основан на образце файла MATLAB, выбранном на предыдущих шагах настройки.

Эти шаги также объяснены в GettingStarted.html файл. Прежде чем запускать, убедитесь, что вы устанавливаете и конфигурируете MATLAB Runtime, и что вы Инструментальному набору JDK установлены.

  1. Скопируйте и вставьте сгенерированный файл кода драйвера Java makesqrSample1.java от samples папка в папку, содержащую makesqr.jar файл.

  2. Используйте системную командную строку, чтобы перейти к папке, которая содержит сгенерированный файл кода драйвера Java и makesqr.jar файл.

  3. Скомпилируйте приложение с помощью javac в командной строке системы.

    javac -classpath "mcrroot\toolbox\javabuilder\jar\platform\javabuilder.jar";.\makesqr.jar .\getmagic.java

    Примечание

    В UNIX® платформы, используйте двоеточие (:) как разделитель пути класса вместо точки с запятой (;).

    mcrroot - путь к установке MATLAB Runtime в вашей системе. Если в системе установлен MATLAB, можно использовать путь к установке MATLAB.

  4. В командной строке системы запустите приложение. Если вы использовали образец кода MATLAB в шагах упаковки, это приложение должно вернуть тот же выход, что и образец кода.

    java -classpath .;"mcrroot\toolbox\javabuilder\jar\platform\javabuilder.jar";.\makesqr.jar makesqrSample1
        17    24     1     8    15
        23     5     7    14    16
         4     6    13    20    22
        10    12    19    21     3
        11    18    25     2     9

    Поместите точку (.) в первой позиции пути класса для представления текущей рабочей директории. Если его нет, вы получаете сообщение о том, что Java не может загрузить класс.

    Примечание

    На платформах UNIX используйте двоеточие (:) как разделитель пути класса вместо точки с запятой (;).

См. также

| | |