Вызов jar мидлета для извлечения данных в код Python - PullRequest
2 голосов
/ 23 января 2010

У меня есть файл JAR мидлета JAR-файла, который возвращает значение INT в соответствии с некоторыми входными данными ...

Проблема в том, что мне нужно получить значение INT, вызвав файл jar с помощью некоторого кода Python (и отправив необходимые входные данные для получения данных результата). Как я могу получить доступ к функциям и переменным файла JAR мидлета?

Я пытаюсь декомпилировать JAR в код Java, но результат оказался бесполезным. Каким-то образом мне нужно получить код или получить связанные данные, которые оцениваются файлом JAR?

Возможно ли это?

Ответы [ 3 ]

0 голосов
/ 23 января 2010

Я мало что знаю о J2ME, но вы можете использовать средство Python pipe для вызова метода в JAR, например, java -jar myjar.jar org.package.Main param1. См. Также параметры командной строки java для вашей ОС.

Добавление: пример в документации pipe показывает, как прочитать результат команды. Возможно, вам придется написать собственный метод main(), который использует самоанализ , чтобы вызвать целевой метод с правильными параметрами, как описано в этой статье JavaWorld : Подробно взгляните на Java Reflection API .

0 голосов
/ 23 августа 2010

Мидлет не может работать в стандартной настольной JVM, потому что ему нужны дополнительные библиотеки. Но вы можете использовать эмулятор типа http://www.microemu.org/ для запуска программы. Как получить доступ к определенной функции внутри кода, вызвать ее с определенными параметрами и прочитать результат, будет настоящей проблемой. Но MicroEmu с открытым исходным кодом, поэтому я уверен, что это возможно. Вам понадобятся некоторые (вероятно, продвинутые) навыки Java. Еще один вариант легче, чем MicroEmu - http://kobjects.sourceforge.net/me4se/

0 голосов
/ 23 января 2010

Jython имеет собственный доступ к коду Java, но я не уверен, поддерживает ли он MIDP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...