Насколько я знаю, я могу запускать .mex-файлы в Linux, которые были сгенерированы в Windows, установив Matlab Runtime в Linux (исправьте меня, если я ошибаюсь). Но что, если я хочу использовать созданный Java-пакет MATLAB, который был создан в Windows, на Linux (например, Ubuntu)?Использование Java-пакета MATLAB (Windows) в Linux
Цель:
Я должен проверить функцию, которая использует обработку звука. Если тест будет успешным, мы купим нужные нам продукты. На данный момент у меня есть запрошенная лицензия на Windows, так как запрошенная лицензия имеет ограничение на машину, я могу сгенерировать некоторый тестовый Java-код на моей машине с Windows, теперь приложение будет развернуто на android, поэтому я узнал из Google, что для запуска или компилятора для использования преобразованного/сгенерированного кода требуется время выполнения matlab. В системе Android нет поддержки MCR или простой поддержки установки Matlab Runtime, поэтому я перешел к этому решению.
Используйте linux для размещения сервлета, который принимает некоторые данные от android, обрабатывает ответ возврата в терминах json или текста. Теперь мой пакет java создается с помощью Windows-машины, и я потерян.
Насколько мне известно, этот подход с использованием кода-конверта-сервлета-развертывания-один является экономически эффективным, чем MATLAB Production Server, поскольку мы должны покупать лицензию один раз для конкретных продуктов. Помните, что этап лицензирования - это после того, как мы проверим, дает ли этот подход желаемые результаты.
Характеристики:
для Windows 10
MATLAB 2016a (Trial)
MATLAB продукты (Компилятор/SDK, обработка сигналов/аудио Processing Toolbox)
Пакет, изготовленный с использованием JDK 1.7.x (точно соответствующий MATLAB jdk/jre ver Sion на Windows)
Ubuntu 16 Desktop (с Oracle JDK 8_101 установлен, установлен также MATLAB выполнения, я также могу работать с JDK 7.x (так же, как MATLAB используется в Windows, при создании пакета))
Вопросы:
Как я могу использовать этот пакет Java в Linux, когда я создаю программу Java?
Какое программное обеспечение + лицензии необходимы, чтобы сделать это возможным?
Должен ли я установить машину MATLAB на Linux, сгенерировать Java-пакет на Linux-машине и использовать этот пакет в программе Java на той же машине Linux? (Я думаю, мне нужно будет запросить лицензию для него снова)
Есть ли другие методы? Я что-то упускаю?
Позволяет мне помешать смешению в сторону, когда я упаковываю, он автоматически обнаруживает зависимые файлы, и я предполагаю, что он включает их в пакет. Итак, если у меня есть MCR в Linux, я смогу использовать их в своем приложении java, например сервлетах? И тогда мне придется писать MATLAB PS, что, очевидно, я нет. – Talha
Если вы создаете файлы MEX в Windows, они будут специфичными для Windows. Если вы затем скомпилируете и упакуете компонент Java в Windows, он обнаружит эти зависимости и включит их в упакованный компонент Java. Компонент Java будет тогда специфичным для Windows. Вы не сможете запустить его в Linux. –