powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Макроязык в Java, нужен совет гуру!
15 сообщений из 15, страница 1 из 1
Макроязык в Java, нужен совет гуру!
    #38872506
kevinlexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть небольшой проект на Java, в нём использую объекты,
которые загружаю посредством hibernate.
Всё ничего, но количество объектов - варьируется, их состояние тоже меняется,
как и логика взаимодействия друг с другом.

Решил встроить скриптовый язык. Скрипты предполагаю будут загружаться
из базы, и выполняться. Необходимо, чтобы выполняемый ими
код работал с уже созданными объектами в main Java процедуре. (Передавал
данные в них, вызывал методы).

Смотрю в сторону Groovy (мож что другое посоветуете).
Но чёт совсем нахожу мало примеров по вызовам из скрипта Groovy методов объектов
Java программы, самой и исполняющего этот скрипт (я надеюсь меня кто то понял))
посредством например:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
ClassLoader parent = getClass().getClassLoader();
GroovyClassLoader loader = new GroovyClassLoader(parent);
Class groovyClass = loader.parseClass(new File("src/test/groovy/script/HelloWorld.groovy"));

// let's call some method on an instance  <<--ТОЛЬКО здесь идёт вызов метода объекта в Groovy, мне же нужно наоборот!!!
GroovyObject groovyObject = (GroovyObject) groovyClass.newInstance();
Object[] args = {};
groovyObject.invokeMethod("run", args);



Спасибо за ранее всем, кто откликнется!
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872582
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexus,

Например это , правда оно не Groovy.
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872588
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexus,

А вот тут Mixed Java and Groovy Applications и про Groovy есть... Вообще, учитесь уже поисковыми системами пользоваться.
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872655
For All
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexusНо чёт совсем нахожу мало примеров по вызовам из скрипта Groovy методов объектов
Java программы, самой и исполняющего этот скриптВызывайте groovy программу через GroovyShell, в него передавайте контекст с объектами, методы которых хотитет вызывать. Сам методы вызываются как обычно - через точку :)
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872665
kevinlexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
For AllkevinlexusНо чёт совсем нахожу мало примеров по вызовам из скрипта Groovy методов объектов
Java программы, самой и исполняющего этот скриптВызывайте groovy программу через GroovyShell, в него передавайте контекст с объектами, методы которых хотитет вызывать. Сам методы вызываются как обычно - через точку :)

Дружище, именно это мне и нужно сделать, но чёт толи примеры неудачные нахожу, толи туплю что то. Уже читал про GroovyShell,
не доходит что то. Может тынц какой нить подскажешь?))
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872683
kevinlexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, типа такого вызова, через враппер?

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
class MyWapper {
  public String myText
  public MyWrapper(String text){
   this.myText = text;
  }
}

MyWrapper test = new MyWrapper("test")
b.setVariable("sth", test)
test.myText = "blah"
GroovyShell gs = new GroovyShell(b)
gs.evaluate("print(sth)")
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872790
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexus, а что автоматизируют Груви-скрипты в твоей задаче? Формочки? Логика?
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872947
kevinlexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,

Груви-скрипты должны динамически загружаться, осуществляя некую логику
взаимодействия объектов в вызываемой программе Java.
Скрипты будут храниться в базе, правится через админку, и логику приложения
(только в части объектов можно будет менять динамически)
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872979
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexus,
Что значит динамически?
А то, взаимодействие и Java делает.
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38872984
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexus,
Игровой движок что ли?
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38873008
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexusFor Allпропущено...
Вызывайте groovy программу через GroovyShell, в него передавайте контекст с объектами, методы которых хотитет вызывать. Сам методы вызываются как обычно - через точку :)

Дружище, именно это мне и нужно сделать, но чёт толи примеры неудачные нахожу, толи туплю что то. Уже читал про GroovyShell,
не доходит что то. Может тынц какой нить подскажешь?))
Ах, вот вы о чём...
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38873010
kevinlexus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123,

нет, не игровой. Пишу для себя умный дом.
Объекты - всякие датчики, выключатели и т.п.

Хочу чтобы логика взаимодействия этих объектов была вынесена,
и чтобы можно было исправлять не перекомпилируя программу.
(а может даже и не останавливая её)
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38873058
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexus,
логика CRUD тоже вынесена без перекомпиляции программы.
Так что имей ввиду, то же самое можно на Java сделать.
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38873267
For All
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kevinlexusFor Allпропущено...
Вызывайте groovy программу через GroovyShell, в него передавайте контекст с объектами, методы которых хотитет вызывать. Сам методы вызываются как обычно - через точку :)
Дружище, именно это мне и нужно сделать, но чёт толи примеры неудачные нахожу, толи туплю что то. Уже читал про GroovyShell,
не доходит что то. Может тынц какой нить подскажешь?)) легко
...
Рейтинг: 0 / 0
Макроязык в Java, нужен совет гуру!
    #38873271
private
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если цель проекта - изучение - то лучше сделать самомо язык, или использовать кложуру, груви и т.п.

Если цель проекта - делать что-то полезное, то скриптовый язык там не нужен, особенно учитывая что это """небольшой проект""".
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Макроязык в Java, нужен совет гуру!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]