У меня есть несколько сценариев, написанных в perl, python и java (завернутый под java GUI с системными вызовами perl & python). И у меня много нетехнических пользователей, которым нужно использовать их в своих машинах Windows (xp & 7).
Чтобы пользователи не устанавливали perl, python и java и чтобы избежать потенциальной несовместимости между различными версиями этих интерпретаторов, я хотел бы сделать локальную копию этих интерпретаторов в папке, а затем вызвать их. Я бы застегнул всю папку (которая также содержала бы мой код) и отправила бы ее.
Мне нужно будет беспокоиться о переменных среды и делать вызовы для правильного интерпретатора (особенно, когда в их текущей системе могут существовать другие версии python, java, perl), но не знаю, какие другие проблемы я могу столкнуться. Любые лучшие идеи?
Я никогда не использовал jython и не знал накладных расходов на его перемещение. Я также подозреваю, что сложная система python со многими файлами и сторонними модулями будет иметь проблемы. То же самое с perl-скриптами, и я не знаю надежного интерпретатора perl, который можно вызывать из java.
Заранее спасибо.
Попробуйте Portable Python и Portable Perl. Вы можете распаковать их в свое дерево приложений, и они должны работать.
Почему бы вам не попробовать перенести свой код perl/python в java, а затем упаковать все в красивое приложение webstart? Что предлагает perl/python, что java не поддерживает?
Для perl вы можете использовать что-то вроде perl2exe и python py2exe, чтобы вы могли иметь 2 exes (включая все необходимые биты интерпретатора) и вызывать их как ресурсы из java? Или разархивируйте их в домашнем каталоге пользователя и вызовите их снова как обычные внешние программы (ProcessBuilder?)?