Maven构建失败 - 符号:,位置:

时间:2017-12-01 11:53:06

标签: java maven

我有一个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]

这可能是什么原因?因为在我自己的项目中他认识到了这个项目,但是构建不起作用。

2 个答案:

答案 0 :(得分:1)

Align top to : View文件中的Dependecy标记只是说,构建特定应用程序也需要哪些项目(让我说pom.xml)。基本上它只是检查器以确定是否还包括项目 - 可以下载依赖项工件,例如。实际上,从maven资源库中,它们必须存在于父项目构建阶段的本地存储库中。

因此,对于您自己的依赖项目,您必须首先手动构建这些项目,工件将从本地存储库中获得,并且将成功构建父项目。

  

请注意,当您使用时,依赖关系不会构建   启动父项目构建。

简单地:

  • parent project
  • 上运行mvn clean install
  • KLUCommon
  • 上运行mvn clean install
  • 在父项目上运行KLULdapAdapter
  

更新!   我知道它也可以制作“一个命令构建”,但我不记得它是怎么回事,这是关于maven模块的一些事情 - 请关注maven docthread(#27689425)或者{{3 }}

答案 1 :(得分:0)

它只是说它无法为ldap.jar找到你的Application.java。因此,请确保使用clean install maven命令在eclipse或netbeans中的同一工作区中首先构建这两个项目,然后最终构建要包含这些项目的项目。 并确保在提到的项目中确实有Application.java文件。