Мне нужно создать случайные экземпляры .xml из .als в моей программе. Мне удалось это сделать, запустив сплав в фоновом режиме (невидимый JFrame) и вызвав функции doOpen, doExecuteLatest и doShowLatest. Но необходимость ждать запуска сплава каждый раз, когда я запускаю свой код, — это боль. Я думаю, что было бы более эффективно, если бы я просто использовал раздел кода сплава, который выполняет эту процедуру (я думаю, это был бы кодкод). Кто-нибудь знает как это сделать? Я нашел код сплава довольно запутанным...
Alloy — создание экземпляра .xml из .als
Ответы (1)
Вы можете использовать Alloy API. Создание экземпляра и запись его в виде файла XML можно легко выполнить, выполнив следующие действия:
- #P2# <блочная цитата> #P3# блочная цитата>
- #P4# <блочная цитата> #P5# блочная цитата>
- #P6# <блочная цитата> #P7# блочная цитата>
Запишите решение, полученное на шаге 3.
решение.writeXML("путь/к/вашему.xml");
Примеры можно найти в пакете edu.mit.csail.sdg.alloy4whole jar-файла Alloy.
person
Loïc Gammaitoni
schedule
13.12.2013
Вы не представляете, как это было полезно! Большое спасибо!
- person mcopo; 13.12.2013
Как перебирать решения? (задано в ‹stackoverflow.com/questions/27227303/). Спасибо.
- person Martin Monperrus; 01.12.2014