如何在多模组 Maven SVN 项目中的另一个模块中正确使用另一个模块的类?



我正在为实习做一个多模块的maven项目。我将调用父项目A。我将调用两个模块:模块A和模块B。

我想做的是从模块a导入一个类,这样我就可以在模块B中使用模块a的类。我不知道如何做到这一点,也不知道到目前为止我所做的到底会发生什么。

因此,我将整个项目提交给了SVN,并且我能够将模块A的依赖项添加到我的模块Bxml中。

我的问题是,当我将模块A的类导入模块B时,到底发生了什么?Maven是从我提交的SVN中提取类吗?如果我想编辑模块A的类,以便它在模块B中执行另一个功能,我是否必须重新提交并重新安装?如果有人能解释一下这个过程,我们将不胜感激。

编辑:另外,我想在模块a的类对象上使用@Autowired,并在模块B中使用它。我不确定这是否可能,有人能解释一下吗?

我的问题是,当我导入模块A时,到底发生了什么进入模块B?Maven是从SVN中提取类吗承诺?如果我想编辑模块A的类执行模块B中的另一个功能,我是否必须重新提交所有重新安装?

Maven和SVN是两个不同的东西,默认情况下彼此无关。这就是当您在父项目上调用"mvn-install"时会发生的情况:

  • Maven将认识到模块B依赖于模块A,因此将首先构建模块A
  • 编译模块A后,Maven将在本地Maven存储库中安装创建的模块A.jar(通常位于C:\Users\/.m2中)
  • 然后,Maven将编译模块B。为此,它需要moduleA.jar,并从您的本地Maven存储库访问它
  • 编译模块A后,Maven将在本地Maven存储库中安装创建的模块B.jar

所有这些都不需要访问您的SVN。

此外,我想在模块a的类对象上使用@Autowired在模块B中使用它。我不确定这是否可能,可以吗有人解释一下吗?

@Autowired是Spring框架提供的一个注释。看见http://www.springsource.org/tutorials关于Spring的几个教程。

最新更新