Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Встроенный java script в си++


Автор: Konst 28.8.2003, 09:03
Хочу встроить java в си. Что бы при чтении скрипта я мог вызывать мои сишные функции, менять переменные и все такое. Что называется embedded java.
Подскажите как это сделать? Или киньте ссылочку на инфу.

Автор: DarkDS 28.8.2003, 09:40
Ты имеешь ввиду написать на яве прогу с найтив длл?
Где использоваться будет? в аплете/StandAlone приложении?

Автор: Konst 28.8.2003, 10:21
Ну к примеру, есть у меня программа на си++. В ней есть функция CreateObject(Vector position). Я встраиваю java в свой код. Компилирую. Потом пишу в файле скрипт на java, который вызывает мою функцию CreateObject(Vector position) с заданным в аргументах position. Запускаю программу. Происходит какое-то событие -> читается мой файл со скриптом -> исполняется моя функция, появляется мой объект.
Хотя бы с самой простой постановке - это вот так.
Как я понимаю, должен быть интерпритатор скрипта у меня быть встроенный, который бы на ходу вкомпилировывал "новый код" при чтении скрипта.

Автор: DarkDS 28.8.2003, 10:57
Что ты подразумеваешь под "скрипт на java"?

Автор: Konst 28.8.2003, 11:00
Какой либо код, написанный на java.

Автор: Sun 28.8.2003, 11:33
Существует технология от Майкрософт, под названием Active Scripting, которая позволяет в твоем приложении использовать интерпретатор JavaScript или VBScript.
Соответственно вся эта беда будет работать только под Windows. Прочитать про технологию можно в MSDN.

Автор: DarkDS 28.8.2003, 11:43
1. Если нужно чтобы Сишный код вызывал Яву... то Актив Скрипт. Но это не чистая ява, а ЯваСкрипт (в общем то смотри выше - меня по этому поводу опередили)
2. Если нужно чтобы ява вызывала сишный код - то тут нужно писать найтив либу. Но это будет работать (наскока я знаю) только в СтандАлоне приложениях.
3. Если нужно чтобы Сишный код вызывая _С команду_ получал оттуда данные, созданные на Яве (чистой)... То тут нужно писать свой компилятор Ява->машинный код.

Автор: Konst 28.8.2003, 11:52
2DarkDS Видимо как раз первое из твоего списка. Сравнивания встраивание lua в си подходит и второе и третье. Как там было. Я подцеплял библиотеки люшные, регестрировал в сишном коде сишные функции для lua. Потом писал скрипт, и непересобирая проект читал скрипт, "менял программу" на ходу.
Так что, как я понимаю, то ActiveScript - это и библиотека и интерпритатор java скрипта - наверное это оно - почитаю.
2SunСпасибо.

Автор: Konst 13.9.2003, 14:02
Я был не прав. Не ActiveScript мне нужен. А что на подобии GVM. Про GVM я новый трэд начал.
Тему наверное можно закрыть.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)