我具有以下结构:
。
<dependency>
<groupId>com.andwari.core</groupId>
<artifactId>my-core</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
我的目标是提供带有jboss焊缝的Injection等东西。
我通过本教程http://fxapps.blogspot.com/2017/10/using-cdi-20-in-javafx-application.html
在JavaFX项目中成功实现了它因此,注入在该项目中工作正常,但在子项目(核心)中却没有。如何使容器也知道核心项目类? 关于它的教程和解释很少或太具体了,所以我不知道它是如何工作的。
我的CDI设置代码基本上与本教程中的代码相同。 (https://github.com/AprendendoJava/javafx-basic-tutorials/tree/master/blog-javafx/javafx-cdi2)
@SuppressWarnings("serial")
@Override
public void start(Stage primaryStage) {
SeContainerInitializer initializer = SeContainerInitializer.newInstance();
final SeContainer container = initializer.initialize();
container.getBeanManager().fireEvent(primaryStage, new AnnotationLiteral<StartupScene>() {});
}
示例:
我有一个像这样的javafx控制器:
public class EventPlayerSelectionController {
...
@FXML
private Button btnStartEvent;
@Inject
private TabPlayerService tabPlayerService;
...
//someMethods
}
由于该服务在JavaFX项目中,因此该注入工作正常。但是在TabPlayerService中,我有:
public class TabPlayerService {
@Inject
private PlayerService playerService;
//some methods
}
PlayerService类来自核心。因此,容器显然无法处理它。如何使这些类可注射?