Maven篇----10 常见问题记录
【问题1】Failure to find oracle:ojdbc6:jar:11.2.0.2.0 in https://repo.maven.apache.or----
原因:Oracle的ojdbc.jar是收费的,所以maven的中央仓库中没有这个资源,只能通过配置本地库才能加载到项目中去。
解决办法:
- 下载ojdbc6-11.2.0.1.0.jar包
- 安装 mvn install:install-file -Dfile=/data/jenkins/ojdbc6-11.2.0.2.0.jar -DgroupId=oracle -DartifactId=ojdbc6 -Dversion=11.2.0.2.0 -Dpackaging=jar
【问题2】eclipse导入maven项目pom.xml文件第一行报错Failure to transfer
解决办法:
- maven 本地仓库中搜索.lastUpdated文件
- 打开对应的文件路径,你会发现JAR包对应的文件目录下,有commons-collections4-4.2.jar.lastUpdated,正常jar包后面有个.lastUpdated后缀,
- 从maven官网下载对应的jar,替换了commons-collections4-4.2.jar.lastUpdated,然后在eclipse中,选中项目-右击-maven-update project,ok 报错消失。
【问题3】Maven构建的Spring Boot项目拉到IDEA中运行,结果运行时报错:
java.lang.NoClassDefFoundError: javax/servlet/MultipartConfigElement
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
at java.lang.Class.privateGetMethodRecursive(Class.java:3048)
at java.lang.Class.getMethod0(Class.java:3018)
at java.lang.Class.getMethod(Class.java:1784)
at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544)
at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526)
Caused by: java.lang.ClassNotFoundException: javax.servlet.MultipartConfigElement
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 7 more
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main"
解决办法:
将pom.xml文件中的spring-boot-starter-tomcat这个依赖也要注掉或者删除才行。刷新pom.xml
【问题4】Could not initialize class org.springframework.http.converter.json.MappingJackson2HttpMessageConverter
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter': Instantiation of bean failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter]: Constructor threw exception; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.springframework.http.converter.json.MappingJackson2HttpMessageConverter
解决办法:
- 首先要检查spring版本与MappingJackson2HttpMessageConverter是否匹配
- 尝试更换jackson版本。
- 一般包类找不到抛NoClassDefFoundError的异常,首先要考虑是否jar没有引用,jar包冲突,或者是版本不对。
【问题5】Error:java: Annotation processing is not supported for module cycles. Please ensure that all modules from cycle [A,B] are excluded from annotation processing
报错原因 : 对于比较复杂的项目来说,项目之间可能存在各种依赖关系,这种错误出现的原因就是(项目之间的循环依赖 即A依赖B的同时,B也依赖A.)
解决办法 : 理清项目之间的关系,去除循环依赖
【问题6】
【Quality】
Quality is the value to someone who matters。做测试,首先要找到这个someone是谁,以及这个 someone重视的 value是什么。