Когда вы развертываете Java® архив, по умолчанию, архивные данные извлечены из файла JAR без отдельного развертываемого архива или папка необходима на целевой машине. Это поведение полезно, когда пространство памяти в файловой системе ограничивается.packageNamemcr
Если вы не хотите извлекать развертываемые архивные данные по умолчанию, можно использовать любого MWComponentOptions класс или переменные окружения, чтобы задать опции для экстракции и использования развертываемых архивных данных.
Выберите из следующего CtfSource или ExtractLocation опции инстанцирования, чтобы настроить, как MATLAB® Время выполнения управляет развертываемым архивным содержимым с MWComponentOptions:
CtfSource — Эта опция задает, где развертываемый архив может быть найден для извлеченного компонента. Это задает поток двоичных данных, состоявший из битов развертываемого архива. Следующие значения являются объектами некоторого типа, расширяющего MWCtfSource:
| Значение | Описание |
|---|---|
MWCtfSource.NONE | Указывает, что никакой развертываемый архив не должен быть извлечен. Эта опция подразумевает, что извлеченные развертываемые архивные данные уже доступны где-нибудь в вашей файловой системе. Этот объект является общедоступным, статическим, итоговым экземпляром |
MWCtfFileSource | Указывает, что развертываемые архивные данные находятся в конкретном расположении файла, которое вы задаете. Этот класс берет |
MWCtfDirectorySource | Указывает на папку, которая будет отсканирована при инстанцировании компонента. Если файл с |
MWCtfStreamSource | Позволяет развертываемым архивным битам быть считанными и извлеченными непосредственно из заданного входного потока. Этот класс берет |
ExtractLocation — Эта опция задает, где извлеченное развертываемое архивное содержимое должно быть расположено. Поскольку MATLAB Runtime требует, чтобы все развертываемое архивное содержимое было расположено где-нибудь в вашей файловой системе, использовало желаемый ExtractLocation опция, наряду с информацией о типе компонента, чтобы задать уникальное местоположение. Значение для этой опции является экземпляром класса MWCtfExtractLocation. Можно создать экземпляр этого класса путем передачи java.io.File или java.lang.String в конструктора, чтобы задать местоположение файловой системы, которое будет использоваться, или можно использовать один из этих предопределенных, статических итоговых экземпляров:
| Значение | Descriptin |
|---|---|
MWCtfExtractLocation.EXTRACT_TO_CACHE | Используйте, чтобы указать, что развертываемое архивное содержимое должно быть помещено в кэш компонента MATLAB Runtime. Эта опция является настройкой по умолчанию для R2007a и вперед. |
MWCtfExtractLocation.EXTRACT_TO_COMPONENT_DIR | Используйте, когда это необходимо, чтобы определить местоположение JAR или |
Примечание
Развертываемые архивы извлечены по умолчанию к .temp\user_name\mcrCachen.nn
Используйте следующие методы, чтобы получить или установить местоположение, где развертываемый архив может быть найден для извлеченного компонента:
getCtfSource()
setCtfSource()
Используйте следующие методы, чтобы получить или установить местоположение, где извлеченное развертываемое архивное содержимое должно быть расположено:
getExtractLocation()
setExtractLocation()
Если вы хотите включить Кэш Компонента MATLAB Runtime для сгенерированного класса Java, использующего развертываемое архивное содержимое, уже резидентское в вашей файловой системе, инстанцируйте MWComponentOptions при помощи следующих операторов:
MWComponentOptions options = new MWComponentOptions();
// set options for the class by calling setter methods
// on 'options'
options.setCtfSource(MWCtfSource.NONE);
options.setExtractLocation(
new MWCtfExtractLocation("C:\\readonlydir\\MyModel_mcr"));
// instantiate the class using the desired options
MyModel m = new MyModel(options);Используйте следующие переменные окружения, чтобы изменить настройки по умолчанию для размера кэша и местоположения развертываемой архивной экстракции.
| Переменная окружения | Цель | Примечания |
|---|---|---|
| MCR_CACHE_ROOT | Когда установлено в местоположение того, где вы хотите, чтобы развертываемый архив был извлечен, эта переменная заменяет местоположение кэша компонента в расчете на пользователя по умолчанию. Это верно для встроенного .ctf файлы только. | На macOS эта переменная проигнорирована в MATLAB R2020a и позже. Комплект приложений содержит файлы, необходимые для времени выполнения. |
| MCR_CACHE_SIZE | Когда установлено, эта переменная заменяет размер кэша компонента по умолчанию. | Начальный предел для этой переменной 32M (мегабайты). Это может, однако, быть изменено после того, как вы установили переменную в первый раз. Отредактируйте файл .max_size, который находится в файле, определяемом путем выполнения mcrcachedir команда, с желаемым пределом размера кэша. |