我已经把这些模块放到我的pom.xml中了
<modules>
<module>rep-digital-common</module>
<module>rep-digital-api</module>
</modules>因此,rep-digital-common包含了rep-digital-api模块所需的公共类。
当我使用
$ mvn clean compile
...
[INFO] rep-digital-common ................................. SUCCESS [ 7.571 s]
[INFO] rep-digital-api .................................... SUCCESS [ 17.988 s]然而,当我表演:
$ mvn -pl rep-digital-api clean package它失败了:
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 12.345 s
[INFO] Finished at: 2018-08-28T12:29:19+02:00
[INFO] Final Memory: 58M/140M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile (default-compile) on project rep-digital-api: Compilation failure: Compilation failure:
[ERROR] /home/jcabre/projectes/repo-digital/rep-digital-api/src/main/java/net/gencat/transversal/repositori/digital/document/service/DocumentService.java:[29,65] cannot find symbol
[ERROR] symbol: class ContentStatusContentStatus符号位于rep-digital-common上。我不太清楚到底出了什么问题。
显然,rep-digital-common是作为rep-digital-api依赖项添加的:
<dependency>
<groupId>net.gencat.transversal.repositori.digital</groupId>
<artifactId>rep-digital-common</artifactId>
</dependency>有什么想法吗?
发布于 2018-08-28 10:42:55
执行mvn clean compile或mvn clean package不会在本地存储库中添加构建的构件。
要在本地存储库中添加构建的工件,必须使用mvn clean install。
注意,实际上您构建了一个反应堆项目,因为反应堆为每个当前模块提供了构建所需的依赖关系。
另一方面,当您单独编译rep-digital-api时,反应堆将无法帮助您:
mvn -pl rep-digital-api clean package所以编译只能失败,因为rep-digital-common类是不可解析的。
https://stackoverflow.com/questions/52055822
复制相似问题