我有一个maven项目和另外两个来自同事的共同图书馆项目。这就是为什么我想将这两个项目作为依赖项包含在我的内容中。
在我的pom.xml中,我有这个:
<dependency>
<groupId>com.xxx.xxx.Tooling</groupId>
<artifactId>KLUCommon</artifactId>
<version>0.0.10-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.xxx.xxx.ldap</groupId>
<artifactId>KLULdapAdapter</artifactId>
<version>0.0.1-SNAPSHOT</version>
</dependency>
我构建了我的maven项目,但我总是得到错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project XXXXX: Compilation failure
[ERROR] /C:/Users/XXXX/Documents/workspace/XXXXX/src/main/java/com/xxx/xxx/ldap/Application.java:[19,38] cannot find symbol
[ERROR] symbol: class ManagerDefs
[ERROR] location: package com.xxx.Tooling.common.model
[ERROR] -> [Help 1]
这可能是什么原因?因为在我自己的项目中他认识到了这个项目,但是构建不起作用。
答案 0 :(得分:1)
Align top to : View
文件中的Dependecy标记只是说,构建特定应用程序也需要哪些项目(让我说pom.xml
)。基本上它只是检查器以确定是否还包括项目 - 可以下载依赖项工件,例如。实际上,从maven资源库中,它们必须存在于父项目构建阶段的本地存储库中。
因此,对于您自己的依赖项目,您必须首先手动构建这些项目,工件将从本地存储库中获得,并且将成功构建父项目。
请注意,当您使用时,依赖关系不会构建 启动父项目构建。
简单地:
parent project
mvn clean install
KLUCommon
mvn clean install
KLULdapAdapter
更新! 我知道它也可以制作“一个命令构建”,但我不记得它是怎么回事,这是关于maven模块的一些事情 - 请关注maven doc和thread(#27689425)或者{{3 }}
答案 1 :(得分:0)
它只是说它无法为ldap.jar找到你的Application.java。因此,请确保使用clean install
maven命令在eclipse或netbeans中的同一工作区中首先构建这两个项目,然后最终构建要包含这些项目的项目。
并确保在提到的项目中确实有Application.java文件。