Когда вы развертываете Java® архив, по умолчанию, архивные данные извлечены из файла JAR без отдельного развертываемого архива или
папка необходима на целевой машине. Это поведение полезно, когда пространство памяти в файловой системе ограничивается.packageName
mcr
Если вы не хотите извлекать развертываемые архивные данные по умолчанию, можно использовать любого 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 команда, с желаемым пределом размера кэша. |