Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » TMF (Xtext) » Guice configuration error(No implementation for xtext.generator.IGenerator was bound)
Guice configuration error [message #1815535] Fri, 04 October 2019 10:34 Go to next message
Jozsef Klespitz is currently offline Jozsef KlespitzFriend
Messages: 34
Registered: September 2019
Member
Hello everyone,

I was following Christian Dietrich's guide to test my code generation.

I have created a new xtend file specifically for testing the code generation.
Here is its content:
package com.bbraun.interfaceparser.tests

import  org.xtext.example.mydsl.Model
import org.xtext.example.mydsl.MyDslInjectorProvider
import com.google.inject.Inject
import org.eclipse.xtext.generator.InMemoryFileSystemAccess
import org.eclipse.xtext.testing.InjectWith
import org.eclipse.xtext.testing.XtextRunner
import org.eclipse.xtext.testing.util.ParseHelper
import org.junit.Assert
import org.junit.Test
import org.junit.runner.RunWith
import org.eclipse.xtext.generator.IGenerator

@RunWith(XtextRunner)
@InjectWith(MyDslInjectorProvider)
class CodeGenerationTest 
{
	@Inject ParseHelper<MemberFunctions> parseHelper
	@Inject IGenerator underTest
	
	@Test
	def void kickoffTest()
	{
		val result = parseHelper.parse('''
			Hello There!
		''')
		val fsa = new InMemoryFileSystemAccess()
		underTest.doGenerate(result.eResource, fsa)
		val errors = result.eResource.errors
		Assert.assertTrue('''Unexpected errors: «errors.join(", ")»''', errors.isEmpty)
	}	
}


When running I got the following error:
com.google.inject.ConfigurationException: Guice configuration errors:

1) No implementation for org.eclipse.xtext.generator.IGenerator was bound.
  while locating org.eclipse.xtext.generator.IGenerator
    for field at com.bbraun.interfaceparser.tests.MemberFunctionsParsingTest.underTest(Unknown Source)
  while locating com.bbraun.interfaceparser.tests.MemberFunctionsParsingTest

1 error
	at com.google.inject.internal.InjectorImpl.getMembersInjector(InjectorImpl.java:952)
	at com.google.inject.internal.InjectorImpl.getMembersInjector(InjectorImpl.java:957)
	at com.google.inject.internal.InjectorImpl.injectMembers(InjectorImpl.java:943)
	at org.eclipse.xtext.testing.XtextRunner.createTest(XtextRunner.java:33)
...


I have found this bug, but it is fixed as mentioned here

Can someone help me solving me this somehow?

I am using Eclipse 2019-09 and Xtext 2.19.0.

Thank you in forward!
Re: Guice configuration error [message #1815536 is a reply to message #1815535] Fri, 04 October 2019 11:12 Go to previous messageGo to next message
Christian Dietrich is currently offline Christian DietrichFriend
Messages: 14665
Registered: July 2009
Senior Member
Hi the new default interface is IGenerator2

Twitter : @chrdietrich
Blog : https://www.dietrich-it.de
Re: Guice configuration error [message #1815537 is a reply to message #1815535] Fri, 04 October 2019 11:12 Go to previous messageGo to next message
Tamas Miklossy is currently offline Tamas MiklossyFriend
Messages: 157
Registered: February 2016
Senior Member
What about using the CompilationTestHelper class?

https://github.com/itemis/itemis-blog/blob/gef_graphical_views_on_xtext_dsls/StateMachineExample/org.eclipse.xtext.example.fowlerdsl.tests/src/org/eclipse/xtext/example/fowlerdsl/tests/StatemachineDotGeneratorTest.xtend
Re: Guice configuration error [message #1815539 is a reply to message #1815537] Fri, 04 October 2019 11:40 Go to previous message
Jozsef Klespitz is currently offline Jozsef KlespitzFriend
Messages: 34
Registered: September 2019
Member
Thanks Christian, thanks Tamás!

The CompilationTestHelper worked like a charm
Previous Topic:File/Model destroyed after refactoring action
Next Topic:How to define dsl to call static field constant
Goto Forum:
  


Current Time: Thu Apr 25 21:11:20 GMT 2024

Powered by FUDForum. Page generated in 0.03261 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top