小智 11
Eclipse工作区(使用M2E时)充当本地maven存储库.您签出的每个Maven项目都可用作依赖项(就像您已将其安装在本地存储库中一样).
例如:如果您的项目A依赖于lib B版本1.0.0并且您在1.0.0版本上检查了lib B的源代码,那么Eclipse将能够使用B的工作区版本编译A.您无需安装本地存储库中的lib B.
当您需要对lib进行更改并在工作区中的应用程序中对其进行测试时,这非常有用.
但请注意,pom A上lib B的依赖版本和pom B上声明的B版本必须完全匹配才能生效.例如,如果在A的pom.xml上,您有:
<dependency>
<groupId>a.b.c</groupId>
<artifactId>B</artifactId>
<version>1.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
您需要1.0.0版本的结帐B.
如果需要在B上进行更改,则可能需要将依赖项版本更改为SNAPSHOT(例如1.0.1-SNAPSHOT)并查看该版本的B.
您还需要在Eclipse项目中选中"Resolve workspace artifacts"选项,以使其正常工作.(右键单击项目 - >属性 - > Maven - >从Workspace项目中解析依赖项)
如果要确保Eclipse正在使用工作空间上的版本而不是已安装的版本(甚至是远程存储库中的版本),请检查pom.xml编辑器上的"依赖关系"选项卡.使用jar图标显示"常规"依赖项,使用Eclipse项目图标显示在工作区上解析的依赖项(如lib B).