2016-10-07 4 views
0

Моя основная программа написана на Python 2.7 (на Mac) и должна использовать некоторую функцию, написанную на Java 1.8, я думаю, что CPython не может напрямую импортировать библиотеку Java (отличную от Jython)?CPython 2.7 + Java

Если нет решения для вызова Java из CPython, могу ли я интегрировать таким образом - оберните функцию Java в приложение командной строки Java, Python 2.7 вызовет это Java-приложение (например, используя os.system), передав параметр командной строки как входы, и получить его консольный выход?

С уважением, Лин

ответ

1
  • Если у вас есть много dependcieis на Java/JVM, вы можете рассмотреть возможность использования Jython.
  • Если вы хотите разработать масштабируемое/поддерживаемое приложение, рассмотрите возможность использования микросервисов и сохраните компоненты Java и Python отдельно.
  • Если ваш вызов на Java прост, и легко получить вывод и сбой, вы можете продолжить выполнение этой системной команды для вызова частей Java.
+0

Спасибо Sivasubramaniam, хороший момент. Для «запускать системную команду», вы имеете в виду запуск 'os.system' в Python? –

+1

@LinMa Да. Вы можете использовать модуль 'command', который очень удобен. Например, 'commands.getstatusoutput ('ls -l')' –

+0

Спасибо, что ответили на мой вопрос, отметьте свой ответ как ответ. –

0

Было написано несколько проектов с открытым исходным кодом, позволяющих вызывать Java из CPython, в зависимости от ваших потребностей.

Смежные вопросы