2012-09-12 4 views
1

자바 컴파일러 레벨을 1.6으로 변경하고 싶지만 나에게 적합하지 않은 것 같습니다. 결과 부분에서 제네릭을 사용하려고합니다.Drools - Java 컴파일러 레벨 변경

다음은 컴파일러 수준을 변경하는 데 사용한 코드입니다.

Drools가 버전 : 5.2.1 GA * JDK 버전 : 1.6 *

final Properties properties = new Properties(); 
properties.setProperty("drools.dialect.java.compiler", "JANINO"); 
properties.setProperty("drools.dialect.default", "java"); 
properties.setProperty("drools.compiler.lnglevel", "1.6"); 


PackageBuilderConfiguration packageBuilderConfiguration = 
     new PackageBuilderConfiguration(properties,(ClassLoader[]) null); 

final KnowledgeBuilder knowledgeBuilder = KnowledgeBuilderFactory 
       .newKnowledgeBuilder(packageBuilderConfiguration); 

내가 잘못 가고 곳 알려주세요.

도움 주셔서 감사합니다.

답변

0

Janino는 제네릭을 의도적으로 지원하지 않습니다. 의식적인 결정 인 것처럼 보이므로 새 버전에서는 변경 될 가능성이 없습니다. 그들은 또한 향상된 for() 루프와 enum을 지원하지 않을 것입니다. 둘 다 Drools에서도 그리워졌습니다.

오른쪽 하단의 지원되지 않는 부분 근처의 Janino webpage을 확인하십시오.

예제에서 "JANINO"라인을 꺼내면 사용을 시작할 수 있는지 궁금 할 것입니다. (기본 컴파일러는 이클립스 컴파일러입니다. 최소한 체크 한 마지막 시간이었습니다.)

+0

http://janino-compiler.github.io/janino/에 따르면, 이제 향상된 for 루프와 enums. –