maven build时出现编译错误,提示程序包不存在

来源:互联网 发布:js短路逻辑 编辑:程序博客网 时间:2024/05/21 06:19

对maven工程执行打包命令时出现错误找不到程序包,打包失败,报错如下:



当出现maven找不到符号的错误时,一般步骤是执行eclipse的Project -> Clean … -> Clean all projects,然后再执行maven clean,将项目清理一下看是否能解决问题。

网上找了一些资料,大致归结如下:

1. 项目编码问题,保证编码统一

pom.xml文件设置jdk版本,source指明支持的jdk版本,target指明项目打包后的jdk版本。



另外查看项目本身的jdk版本,点击项目maven依赖右键->build path->configure build path… ,然后设置项目的jdk版本。保证编码一致



2. pom依赖问题,这种依赖可能是没有添加包的依赖,如果是聚合项目可能是没有添加其他模块的依赖,或者是添加了其它模块的依赖,但是没有将依赖的模块打包到本地仓库等。

不过还是没有解决我的问题,后来的解决方法是对缺失的依赖添加scope标签这个scope 设为provided時只能作用在编译和测试时,同时没有传递性


ps:  <scope>,它主要管理依赖的部署。目前<scope>可以使用5个值: 

    * compile,缺省值,适用于所有阶段,会随着项目一起发布。 
    * provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 
    * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 
    * test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 
    * system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它


阅读全文
1 0
原创粉丝点击