btc-ag / service-idl

Xtext-based Service IDL (Interface Definition Language) and Code Generators for Protobuf, C++, Java and .NET
Eclipse Public License 2.0
8 stars 8 forks source link

Partial versions overrides lead to IllegalArgumentException #215

Closed sigiesec closed 5 years ago

sigiesec commented 5 years ago

With a .generator file specifying

versions = cpp.servicecomm=0.10

an exception is raised when trying to generate Java code:

09:38:07 Exception in thread "main" java.lang.IllegalArgumentException: Unknown Java ServiceComm version: null
09:38:07    at com.btc.serviceidl.generator.java.ServiceCommVersion.get(ServiceCommVersion.java:31)
09:38:07    at com.btc.serviceidl.generator.java.Util.getJavaTargetVersion(Util.xtend:9)
09:38:07    at com.btc.serviceidl.generator.java.BasicJavaSourceGenerator.getJavaTargetVersion(BasicJavaSourceGenerator.xtend:401)
09:38:07    at com.btc.serviceidl.generator.java.ServiceFaultHandlerFactoryGenerator.generateServiceFaultHandlerFactory(ServiceFaultHandlerFactoryGenerator.xtend:46)
09:38:07    at com.btc.serviceidl.generator.java.InterfaceProjectGenerator.lambda$5(InterfaceProjectGenerator.xtend:146)
09:38:07    at com.btc.serviceidl.generator.java.BasicProjectGenerator.generateJavaFile(BasicProjectGenerator.xtend:141)
09:38:07    at com.btc.serviceidl.generator.java.InterfaceProjectGenerator.generateServiceAPI(InterfaceProjectGenerator.xtend:141)
09:38:07    at com.btc.serviceidl.generator.java.InterfaceProjectGenerator.generateProject(InterfaceProjectGenerator.xtend:85)
09:38:07    at com.btc.serviceidl.generator.java.InterfaceProjectGenerator.generate(InterfaceProjectGenerator.xtend:65)
09:38:07    at com.btc.serviceidl.generator.java.JavaGenerator.generateInterfaceProjects(JavaGenerator.xtend:99)
09:38:07    at com.btc.serviceidl.generator.java.JavaGenerator.processModule(JavaGenerator.xtend:80)
09:38:07    at com.btc.serviceidl.generator.java.JavaGenerator.processModule(JavaGenerator.xtend:85)
09:38:07    at com.btc.serviceidl.generator.java.JavaGenerator.processModule(JavaGenerator.xtend:85)
09:38:07    at com.btc.serviceidl.generator.java.JavaGenerator.doGenerate(JavaGenerator.xtend:60)
09:38:07    at com.btc.serviceidl.generator.IdlGenerator.doGenerate(IdlGenerator.xtend:104)
09:38:07    at org.eclipse.xtext.generator.GeneratorDelegate.doGenerate(GeneratorDelegate.java:43)
09:38:07    at org.eclipse.xtext.generator.GeneratorDelegate.generate(GeneratorDelegate.java:34)
09:38:07    at com.btc.serviceidl.generator.Main.tryRunGenerator(Main.java:227)
09:38:07    at com.btc.serviceidl.generator.Main.mainBackend(Main.java:118)
09:38:07    at com.btc.serviceidl.generator.Main.main(Main.java:66)

Expected behaviour: No exception, and the default java target version is used.