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

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

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

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

В MATLAB исследуйте код MATLAB, который вы хотите упакованный. В данном примере открытый makesqr.m расположенный в matlabroot\toolbox\javabuilder\Examples\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\Examples\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 не необходимы, чтобы создать пакеты, они используются, чтобы продемонстрировать, как Установить и Реализовать MATLAB Сгенерированное приложение Java.

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

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

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

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

  • Additional installer options — Путь к стандартной установке для сгенерированного инсталлятора и пользовательского выбора логотипа. Смотрите Изменение Путь к Установке.

  • Files required for your library to run — Дополнительные требуемые для запуска сгенерированного приложения файлы. Эти файлы включены в сгенерированное установщиком приложения. Смотрите Управляют Необходимыми Файлами в Проекте Компилятора.

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

    Смотрите задают файлы, чтобы установить с приложением

Группируйте приложение

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

    В диалоговом окне Save Project задайте местоположение, чтобы сохранить проект.

  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\Examples\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');

    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 используйте двоеточие (:) как разделитель пути к классу вместо точки с запятой (;).

Смотрите также

| | |