Мне нужно обновить наше приложение с Helidon 3.0.2 до Helidon 3.2.12, но работа дает эту ошибку: < /p>
[INFO] 2025-06-17 13:24:37,043 [main] org.jboss.weld.Bootstrap - WELD-ENV-002001: Weld SE container 144ebd95-bb80-4310-98e2-a1d4f9ebd02e shut down
Exception in thread "main" jakarta.enterprise.inject.CreationException
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
...
at io.helidon.microprofile.cdi.HelidonContainerImpl.doStart(HelidonContainerImpl.java:340)
at io.helidon.common.context.Contexts.runInContext(Contexts.java:137)
at io.helidon.microprofile.cdi.HelidonContainerImpl.start(HelidonContainerImpl.java:250)
at io.helidon.microprofile.cdi.Main.main(Main.java:80)
Caused by: java.lang.IncompatibleClassChangeError: Method 'package02.MyID package02.MyID.valueOf(java.lang.String)' must be InterfaceMethodref constant
at package01.MyFactory.(MyFactory.java:55)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
...
at org.jboss.weld.injection.ConstructorInjectionPoint.newInstance(ConstructorInjectionPoint.java:119)
... 68 more
< /code>
Классы библиотеки (отдельный файл JAR): < /p>
package package02;
public class MyID extends AbstractID implements ID {
protected MyID(final Builder builder) {
super(builder);
}
public static MyID valueOf(final String ocid) {
return (MyID) new Builder(id).accept(, ).build();
}
}
package package02.internal;
public abstract class AbstractID implements ID {
protected AbstractID(final Builder builder) {
//...
}
public static class Builder {
public Builder(final String id) {
//...
}
}
}
< /code>
Реализация приложения: < /p>
package package01;
import io.helidon.config.Config;
import jakarta.enterprise.context.ApplicationScoped;
import jakarta.inject.Inject;
@ApplicationScoped
public class MyFactory {
@Inject
public MyFactory(final Config config) {
this. = MyID.valueOf(loadProperty(config, )); // this is the problematic line
}
private String loadProperty(final Config config, final String key) {
//...
}
}
< /code>
Все классы недавно скомпилированы. Бег на Java 17.
Может ли кто -нибудь дать мне подсказку, что делать?
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/796 ... hangeerror