zoukankan      html  css  js  c++  java
  • Compilation failure Error 程序包xxx不存在,Error 找不到符号

    在Java工程里好几次遇到了这个错误,每次都不记得上一次是怎么解决的,导致都要花费很长时间去处理,另一方面也是对java学习理解和使用的不够熟练。

    现在将此问题记录下来,并将解决方法以及思路整理一下,下次再遇到可以有个参考。

    先对问题进行一个简单的描述:

    使用外部依赖添加的方式引入了某个jar包,在本地运行的时候可以正常运行,然而在使用maven打jar包的时候就会报错,具体错误就是找不到引入的那个jar包,对jar包中方法的使用也都是找不到符号。然而,让人无语的是IDEA中程序代码里并没有报错,一度很无奈。

    网上一搜索,很多都是让检查Project Structure中project以及modules中的java环境配置、java compiler中的配置以及运行中的配置,然而检查之后发现都是一致的。

    也有让检查pom文件中对maven-compiler-plugin配置的检查,也没有发现问题。

    参考此文:https://blog.csdn.net/leo115/article/details/8187451

    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.1</version>
    <configuration>
    <source>1.8</source>
    <target>1.8</target>
    <encoding>UTF8</encoding>
    </configuration>
    </plugin>

    有一次通过注释掉version那一行结果可以成功打jar包了,但是后面又不行了.

    经过冷静下来思考,将jar包的引用方式改为通过pom文件引入,最终成功引入之后,再通过maven打jar包就没问题了。

    虽然问题解决了,但还是没有搞懂通过pom文件引入和通过外部文件依赖引用的区别,猜测可能是这里的差异导致不能正常通过maven打jar包,需要再进一步学习。

    感悟:遇到问题不要慌,像jar包不存在的错误首先想着如何去正确引用jar包,或许能够节省不少时间。

  • 相关阅读:
    Naive Operations HDU6315 (杭电多校2G)
    Baker Vai LightOJ
    LOJ#6278. 数列分块入门 2
    LOJ#6277. 数列分块入门 1
    Picture POJ
    Who Gets the Most Candies? POJ
    Dividing the Path POJ
    Balanced Sequence HDU
    归并排序
    Flying to the Mars
  • 原文地址:https://www.cnblogs.com/Faquir/p/10416039.html
Copyright © 2011-2022 走看看