我开发了一个作为OSGI felix包部署的java项目。本项目包含2个包:第一个包只包含一个类(CLASS_1),它应该从文件中读写一些消息;-第二个包包含2个类:一个webSocketServer (@ServerEndPoint)包含一个方法@onMessage(以及所有其他强制方法)和另一个类注册websocket。
在第二个包中的方法@OnMessage中,我将调用第一个包中的方法来存储即将到来的消息。
websocket工作正常,如果我不使用CLASS_1的方法。但是当我使用它时,在运行时(当一个消息到达时),我有一个ClassNotFoundException类(CLASS_1)。我不知道是什么问题。也许pom.xml文件中缺少了什么?(我使用maven)
有人能帮帮我吗?
Thanks in advance
需要使用OSGi compendium的服务组件架构。在您的情况下,CLASS_1必须发布它的服务,这些服务将被您的其他bundle(通过接口)使用,您还需要定义组件类,以便注入您的服务并使用它们。
有很多库可以实现服务组件架构,比如apache.felix。scr, apache blueprint, aQute等。我建议您仔细检查每一个,并决定哪一个最适合您的项目。