2016-09-23 32 views

回答

0

不可以。您不能访问更新的代码。这是因为,当你构建一个Maven应用程序时,它会从你的.m2存储库中获得所有的依赖关系。如果它没有找到那里的依赖关系,那么它会搜索你的远程仓库。
对于您的情况,当您更新A的代码并且不构建它时,更新后的工件将不会在您的.m2存储库中可用。现在,如果您构建项目B,那么它将尝试从.m2存储库中获取项目A artiufact。由于在修改代码后没有构建A,因此B将获取当前存在于.m2文件夹中的工件,即旧代码的工件。
您可以使用的另一种方法是拥有一个父pom。这只是一个聚合器pom,它将为你的两个模块执行pom.xml。对于如:

<project xmlns="http://maven.apache.org/POM/4.0.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
          http://maven.apache.org/maven-v4_0_0.xsd"> 
    <modelVersion>4.0.0</modelVersion> 

    <groupId>org.sonatype.mavenbook.multispring</groupId> 
    <artifactId>simple-parent</artifactId> 
    <version>1.0</version> 
    <packaging>pom</packaging> 

    <modules> 
     <module>module-A</module> 
     <module>module-B</module> 
    </modules> 
</project> 

请注意,这样做的包装应POM

相关问题