我们做项目实际中经常会遇到这样的情况,创建一个common项目(Maven项目)作为公用项目,common中有很多工具类可以供其它多个项目调用。
例如,把common、service都单独拆开成独立的Maven项目,供其它的项目使用,通过jar的方式被其它项目通过Maven引用。
现在web项目需要引用common和service,如果IDEA分别单独打开common、service、web项目,那么在调试web项目的时候,就会遇到困难:web引用的common和service中的代码都是打包成jar的,无法调试。除非common和service安装的时候把源码也install到本地仓库,但是那样不方便,每次common和service更新都需要maven install操作后,web中引用的代码才会更新。
1.Eclipse解决方案
Eclipse中有WorkSpace的概念,把common、service、web都放到一个WorkSpace中,Eclipse会打开WorkSpace中的所有项目,Eclipse会自动查找依赖,在web中点击common的代码,会直接跳转到common中对应的源码中去,调试的时候,也能调到common中单步调试,非常方便。
那么使用IntelliJ IDEA是否也能实现WorkSpace功能呢?当然能,IntelliJ IDEA是非常强大的,这个功能必须有!
2.IntelliJ IDEA解决方案
2.1 首先,从SVN上把common、service、web三个项目下载到本地的某个目录中,例如下载到名为WorkSpace的文件夹下:
2.2 打开IntelliJ IDEA编译器,点击菜单 File->Open...,选择刚刚的WorkSpace目录:
点击OK打开WorkSpace目录。打开后界面如下:
2.3 打开后,发现IDEA并没有自动识别Maven项目,这时候,需要手动在IDEA右侧的Maven Projects栏中添加项目的pom.xml文件,这样IDEA就能识别了:
按住Ctrl多选pom.xml文件,然后点击OK按钮。
2.4 好了,到这里IDEA就已经能够识别各个Maven项目之间的依赖了。
你可以开心的开发调试了