Maven篇----10 常见问题记录

【问题1】Failure to find oracle:ojdbc6:jar:11.2.0.2.0 in https://repo.maven.apache.or----

原因:Oracle的ojdbc.jar是收费的,所以maven的中央仓库中没有这个资源,只能通过配置本地库才能加载到项目中去。

解决办法:

  1. 下载ojdbc6-11.2.0.1.0.jar包
  2. 安装 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

解决办法:

  1. maven 本地仓库中搜索.lastUpdated文件
  2. 打开对应的文件路径,你会发现JAR包对应的文件目录下,有commons-collections4-4.2.jar.lastUpdated,正常jar包后面有个.lastUpdated后缀,
  3. 从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

解决办法:

  1. 首先要检查spring版本与MappingJackson2HttpMessageConverter是否匹配
  2. 尝试更换jackson版本。
  3. 一般包类找不到抛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】

原文地址:https://www.cnblogs.com/liuyitan/p/13218832.html