我有一个应用程序,它被部署为两个独立的Web项目 - w1& W2。父项目P包含w1& W2。代码已添加到w1,它使用w2上的代码,因此我需要将w2添加到w1的类路径以使用此代码。每个Web项目都应该是自包含的,所以创建这种依赖是一种不好的做法吗?
此外,这是Maven项目,因此,为了构建.war,需要将w2创建为依赖项。我认为这只是在项目之间的依赖关系管理方面打开了很多问题。
我认为应该创建一个单独的jar项目,它只包含要共享的代码,然后将其添加为依赖项。
答案 0 :(得分:1)
是的,我认为这是不好的做法。在运行时正确隔离战争类加载器的容器中,您会看到w1项目中的错误。如果您要创建两个自包含的战争并希望重用一段代码/功能,我建议创建一个构建为包含该功能的jar的第三个项目。然后,您的两个Web项目可以将该库作为依赖项包含在内。
答案 1 :(得分:1)
是。如果你在w2中有w1中需要的代码组件,反之亦然,那么你应该将这些组件提取到一个单独的“通用”项目中,这个项目同时包括w1和w2。 w2取决于。特别是因为你也有其他依赖(Spring等)