Передача события из приложения C # в приложение Java - PullRequest
3 голосов
/ 10 апреля 2011

У меня есть приложение Java, которое запускает небольшое приложение C # на клиентском компьютере.

Мне нужно простое решение для передачи событий между C # и приложениями Java.

Для обработки в обратном направлении (Java-> C #) я использовал FileSystemWatcher, который прослушивает события изменения папки. Приложение Java записывает пустой файл в общую папку, а приложение C # обрабатывает эти события в соответствии с (пустым) именем файла (а затем удаляет его из «очереди»). Не удалось найти Java-эквивалент FileSystemWatcher для решения проблемы передачи событий из C # в Java.

Есть креативная идея? (напоминание: это просто приложение Java, поэтому у меня нет сервера Apache или чего-то в этом роде).

Спасибо

Ответы [ 5 ]

3 голосов
/ 10 апреля 2011
1 голос
/ 10 апреля 2011

Существует много возможных способов, но обычно они делятся на две категории:

java <-> c # interop (например, http://jni4net.sourceforge.net/) или некоторая форма стандартизированной коммуникации, например, веб-сервисы (они не требуют«сервер» для работы), такой как WCF в C # и Metro на стороне Java.

Кстати: вам действительно не следует использовать файловую систему для передачи событий.

1 голос
/ 10 апреля 2011

Я бы использовал простой JMS-сервер, такой как ActiveMQ, для передачи сообщений туда и обратно.

1 голос
/ 10 апреля 2011

в основном вам нужно межпроцессное взаимодействие. Есть много способов для этого.

  • Разъем
  • Именованные трубы
  • Любая распределенная очередь, такая как RabbitMQ, ActiveMQ и т. Д.
  • по имени Mutex

http://www.ikvm.net/

e.t.c.

1 голос
/ 10 апреля 2011

http://jni4net.sourceforge.net/

Это, вероятно, вариант для вас.

Это похоже на дубликат

IPC между клиентскими приложениями .NET и Java

...