Я выполняю правило Drools через тест Mockito. Правило не работает во время выполнения сообщения об ошибке с номером строки java-файла с длинным произвольным именем. Кажется, что Drools генерирует java-файлы «на лету» и вводит в JVM. Но когда я просматриваю эти файлы на своем диске, я не нахожу их. Есть ли способ сохранить их на диске?Drools доступ к сгенерированным java-файлам
1
A
ответ
5
Есть решение:
Вы можете сбросить Drools генерируемый Java-файлы двумя способами.
1) через командную строку:
-Ddrools.dump.dir="target/dumpDir"
например Я использую Maven команду для выполнения правила, поэтому было бы
mvn -Ddrools.dump.dir="target/dumpDir" -Dtest=DroolsRuleTest test
2) Через API
public class FileKnowledgeBaseFactory implements KnowledgeBaseFactory {
private Log log = LogFactory.getLog(FileKnowledgeBaseFactory.class);
public KnowledgeBase load(String drlFullFilename) {
KnowledgeBuilderConfiguration config = KnowledgeBuilderFactory.newKnowledgeBuilderConfiguration();
config.setOption(DumpDirOption.get(new File("target/dumpDir")));
KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory.newKnowledgeBuilder(config);
....
....
}
}
+0
можем ли мы сделать то же самое с муравьем, как с mvn ??? –
Смежные вопросы
- 1. Доступ к дочерним элементам, сгенерированным шаблоном
- 2. Доступ к Nashorn сгенерированным байт-кодом
- 3. Доступ к файлам с сгенерированным именем
- 4. Drools 6 - Доступ к LHS объекта ObjectInsertedEvent
- 5. Drools Workbench, доступ к репозиторию через SSH
- 6. Как получить доступ к csv, сгенерированным с помощью запроса/reportstats?
- 7. AngularJS: Как получить доступ к сгенерированным данным из директивы?
- 8. Доступ к сгенерированным серверам Grails/hibernate SQL для класса домена
- 9. Доступ к XMLBeans, сгенерированным schemas.jar в проекте Maven
- 10. Доступ к данным JSON внутри NSDictionary, сгенерированным из NSJSONSerialization
- 11. Доступ к переменным группировки из экземпляра группы, сгенерированным groupby()
- 12. Доступ к объектам, сгенерированным сервлетом (JSONObjects) через AJAX и JQuery
- 13. Как получить доступ к сгенерированным элементам управления с помощью ASP.Net
- 14. Как вы получаете доступ к сгенерированным элементам сетки?
- 15. Drools working concurrency drools 5.5.0
- 16. Доступ к списку в drools, которые создаются во время выполнения
- 17. Доступ к свойствам класса Child из родительского класса в drools
- 18. Drools - ArrayList доступ WTH множественного условия
- 19. Drools - ClassCastException в Drools 6
- 20. Добавить префикс к сгенерированным ссылкам, но не к входящим маршрутам
- 21. Добавить префикс к классам, сгенерированным cxf
- 22. Подготовить пользовательские css к сгенерированным файлам CSS
- 23. Получить имена и путь к сгенерированным документам
- 24. Добавление атрибута хоста к сгенерированным элементам DOM
- 25. привязка данных нокаута к динамически сгенерированным элементам
- 26. Дополнительная кнопка удаления добавляется к сгенерированным изображениям
- 27. Возврат REF CURSOR к сгенерированным процедурам данным
- 28. Как добавить базовый url к сгенерированным элементам?
- 29. Добавление события onClick к динамически сгенерированным кнопкам?
- 30. Присоединение плагина jQuery к динамически сгенерированным элементам
Что ошибка вы получаете? Если он компилирует файлы, он, вероятно, хранит их во временном месте и очищает их при завершении - так что вы их никогда не найдете. Однако ошибка должна указывать на фактический файл класса где-то в его выходе. –
Это должна быть ошибка компиляции правила, а не время выполнения (время выполнения правила). Скомпилируйте файл DRL за пределами Mockito, и вы увидите сообщение об ошибке, когда вы спросите строителя о накопленных ошибках. – laune
Я получаю NullPointerException, это не выглядит какой-либо ошибкой компиляции правила. –