我有一个多模块maven项目。它设置正确,因为当我运行maven clean install时,它成功构建了所有模块。 Web应用程序包含我需要在Web服务中使用的常用功能,因此我将其作为maven依赖项包含在Web服务中。
Maven反应器摘要:
[INFO] Reactor Summary:
[INFO]
[INFO] Parent .................................. SUCCESS [ 0.420 s]
[INFO] Webapp .................................. SUCCESS [ 6.221 s]
[INFO] Webservice .............................. SUCCESS [ 5.954 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.763 s
[INFO] Finished at: 2016-09-20T16:27:50-04:00
[INFO] Final Memory: 18M/238M
[INFO] ------------------------------------------------------------------------
Eclipse甚至将webapp项目发送到Web服务的部署程序集。
以下是我的webser服务中的maven依赖关系:
<dependency>
<groupId>com.company</groupId>
<artifactId>webapp</artifactId>
<version>16.3</version>
<scope>compile</scope>
</dependency>
但是,当我尝试运行时,我会收到以下内容:
Caused by: java.lang.ClassNotFoundException: com.company.model.User
要解决此问题,我必须从部署程序集中删除该模块,并实际添加在/ target文件夹中创建的jar。看起来如果我不这样做,它将不会在服务器上的lib文件夹中创建可执行jar文件,而只是webapp项目的文件夹结构。有没有我可以用来解决这个问题的设置,所以它在服务器上正确部署?任何建议都非常感谢,因为这是我的第一个多模块maven项目,我一直在努力解决这个问题,它正在成为一个令人讨厌的问题。谢谢!