Я установил подключаемый модуль Drools Eclipse org.drools.eclipse
7.36.0.Final в свой Eclipse 2020_03, работающий с Oracle JDK 1.8.0_92. Я загрузил и распаковал drools-distribution-7.36.0.Final
и добавил каталог binaries/
как Drools > Installed Drools Runtimes
в настройках Eclipse.
Как только я использую какие-либо функции Java 1.5+ (общие, циклы foreach, замыкания, ...) Я получаю маркеры ошибок в редакторе правил, в которых говорится, что есть синтаксические ошибки, и для этих функций требуется исходный уровень 1.5 (1.8 для замыканий).
Мои файлы .drl и сам проект кажутся в порядке, потому что я могу скомпилировать и запустить через maven без ошибок. Так что это не проблема с блокировкой, но меня раздражает то, что я не могу получить синтаксические проверки для файлов .drl, работающих должным образом в моей среде IDE.
Я искал inte rnet и пробовал все:
- Я установил исходные уровни JDT в моем проекте и рабочей области на 1.8
- Я проверил Установленные JRE в свойствах, и в списке указан только один JDK 1.8.0_92
- Я создал файл
kmodule.xml
в /src/main/resources/META-INF/
с этим содержимым
<?xml version="1.0" encoding="UTF-8"?>
<kmodule xmlns="http://jboss.org/kie/6.0.0/kmodule">
<configuration>
<property key="drools.dialect.java.compiler.lnglevel" value="1.8" />
<property key="drools.dialect.java.compiler" value="ECLIPSE" />
<property key="drools.compiler.lnglevel" value="1.8" />
</configuration>
<kbase name="rules">
<ksession name="codegen-rules"/>
</kbase>
</kmodule>
- Я создал
kie.properties.conf
файл в /src/main/resources/META-INF/
со следующим содержимым:
drools.dialect.java.compiler.lnglevel=1.8
drools.dialect.java.compiler=ECLIPSE
drools.compiler.lnglevel=1.8
- Я добавил свойства в раздел аргументов виртуальной машины моего
eclipse.ini
файла:
-Ddrools.dialect.java.compiler.lnglevel=1.8
-Ddrools.dialect.java.compiler=ECLIPSE
-Ddrools.compiler.lnglevel=1.8
Но все это не похоже чтобы иметь какой-либо эффект, и он продолжает выдавать мне те же маркеры ошибок.
Как я могу сказать Редактору правил , что я хочу включить Java 1.8 уровень исходного кода при проверке синтаксиса моего .drl
файлы?