Maven java编译错误无法访问CommonClassA

背景

  • 我正在开发Maven多模块项目。
  • 其中一个模块是其他所有模块所需的通用模块。
  • 该模块包含CommonClassA.java
  • 通用模块被正确编译。
  • 它被正确地安装到maven本地存储库中。
  • 其他模块(EmployeeBilling)中的类( Billtype.java )之一引用此类( CommonClassA.java )。
  • 公用模块的Maven依赖关系在EmployeeBilling模块的pom.xml中正确指定。
  • 问题

    当编译EmployeeBilling模块时,它会抛出

    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project EmployeeBilling: Compilation failure
    [ERROR] MyWorkspaceBizEmployeeBillingsrcmainjavacomemployeeBilltype.java:[79,19] error: cannot access CommonClassA
    [ERROR] -> [Help 1]**
    

    支持细节:

  • EmployeeBilling> pom.xml中定义的依赖关系:

  • 来自通用模块的其他类似乎没有观察到错误

  • 没有找到类未找到/文件未找到其他错误。
  • 类CommonCLassA实现Serializable
  • Eclipse以及commond行发生同样的错误
  • 我正在使用M2E插件
  • 工具

  • jdk1.7.0_02
  • 操作系统:Windows 7
  • Eclipse JUNO和apache-maven-3.1.0
  • 提前致谢!


    如果项目使用eclipse编译器正确构建,那么它应该可以与Maven协同工作。

    几件事情要检查,如果它不与maven合作:

  • 手动检入存储库,该jar已正确安装,并且包含您的类文件。
  • 尝试使用本地安装的Maven而不是Eclipse中的maven来构建项目。
  • 安装jar时设置-DskipTest = true,因为它有时会导致问题。
  • 如果这些步骤不起作用,那就告诉我们你的pom。


    没有更多的信息很难找到原因。 但是我也偶尔会遇到这样的问题,有些事情可能会出错:

  • 你使用正确的JAVA版本(到处)?
  • ...和正确的java PROVIDER ? (Oracle,IBM,OpenJDK)在我的情况下, 这通常是这个问题 ,我有时会绑定到IBM JDK,尽管我尽可能使用Oracle,并且这有时会破坏我的构建。
  • 是否使用了正确的Maven依赖版本VERSION? 如果你多次依赖它,并且所有依赖项都是相同的(低于根)部分,Maven将会“选择”一个版本。 这可能是该版本与您的特定依赖关系的代码不兼容
  • 跳过测试有时可用! 它与maven阶段有关,并且准备好在其他地方使用它。
  • 祝你好运 :)


    我有同样的问题。 即使jar依赖也具有所需的类文件。 最后,我删除了本地maven repo并重新开始构建。 现在它没有任何问题。

    链接地址: http://www.djcxy.com/p/15293.html

    上一篇: Maven java compile error can not access CommonClassA

    下一篇: Making Keychain Certificates available to Atlassian Bamboo