Код: Выделить всё
@RegisterRestClient(configKey = "myservice")
@ApplicationScoped
@LookupIfProperty(name = "myapp.mode", stringValue = "real")
public interface MyAPI {
@GET
@Path("/api/xxx.json")
XXX getXXX();
....
}
Код: Выделить всё
@RestClient
@ApplicationScoped
@LookupIfProperty(name = "myapp.mode", stringValue = "mock")
public class MockMyAPI implements MyAPI {
XXX getXXX() {
return ....;
}
....
}
Но когда я запускаю тест, я получаю следующее исключение:
Код: Выделить всё
Caused by: java.lang.IncompatibleClassChangeError: class a.b.c.MockMyAPI can not implement a.b.c.MyAPI, because it is not an interface (a.b.c.MyAPI is in unnamed module of loader io.quarkus.bootstrap.classloading.QuarkusClassLoader @178c9eda)
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1027)
at io.quarkus.bootstrap.classloading.QuarkusClassLoader.loadClass(QuarkusClassLoader.java:523)
at io.quarkus.bootstrap.classloading.QuarkusClassLoader.loadClass(QuarkusClassLoader.java:481)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:534)
at java.base/java.lang.Class.forName(Class.java:513)
at a.b.c.MockMyAPI_Bean.(Unknown Source)
Подробнее здесь: https://stackoverflow.com/questions/791 ... in-quarkus
Мобильная версия