【发布时间】:2021-08-26 08:34:38
【问题描述】:
我想将一个 Java 类放入使用 Vaadin @Endpoint 注释(来自 com.vaadin.flow.server.connect.Endpoint)的 Maven 工件中,以便在多个 Vaadin 项目中使用该类。
以下是此类的一个简单示例:
import com.vaadin.flow.server.connect.Endpoint;
import lombok.RequiredArgsConstructor;
import java.util.Optional;
@Endpoint
@RequiredArgsConstructor
public class SupportInfoEndpoint {
public Optional<String> getSupportInfo(){
return Optional.of("mailto:support@my.corp");
}
}
Maven 工件包括类的源代码。我该怎么做才能在使用项目中通过 Vaadin 构建过程扫描此类,以便
- 生成前端对应的 TypeScript 代码
- 该类包含在 Spring-Boot 应用程序中(因此端点实际上在运行时可用)
有可能吗?
【问题讨论】:
-
我不确定这是否也适用于 Fusion。试试@EnableVaadin({"你的包名"})
-
@SimonMartinelli 这个注释应该放在哪里?到使用Application.java?
-
在任何配置调用上。最好是你有@SpringBootApplication
-
@SimonMartinelli 它似乎不适用于我正在使用的 Vaadin 版本。注释仍然可用,但使用它会导致
BeanDefinitionOverrideException,使用spring.main.allow-bean-definition-overriding=true设置甚至无法将其静音。 -
这意味着 SupportInfoEndpoint 已经注册了。
标签: vaadin vaadin20 vaadin-fusion hilla