当前位置: 代码迷 >> 综合 >> Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
  详细解决方案

Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

热度:24   发布时间:2023-12-12 01:05:22.0

problem

创建了spring工程,设置了bean,
测试时报错:

// bean方式创建实例
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
Hello hello = (Hello) context.getBean("hello");
System.out.println(hello.toString());
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

附带问题:
maven reimport报错:unable to import maven project see logs for detail
详情:

2 errors 
java.lang.RuntimeException: com.google.inject.CreationException: Unable to create injector, see the following errors:1) No implementation for org.apache.maven.model.path.PathTranslator was bound.while locating org.apache.maven.model.path.PathTranslatorfor field at org.apache.maven.model.interpolation.AbstractStringBasedModelInterpolator.pathTranslator(Unknown Source)at org.codehaus.plexus.DefaultPlexusContainer$1.configure(DefaultPlexusContainer.java:350)2) No implementation for org.apache.maven.model.path.UrlNormalizer was bound.while locating org.apache.maven.model.path.UrlNormalizerfor field at org.apache.maven.model.interpolation.AbstractStringBasedModelInterpolator.urlNormalizer(Unknown Source)at org.codehaus.plexus.DefaultPlexusContainer$1.configure(DefaultPlexusContainer.java:350)

solution

尝试过的处理:

  • 删除maven repo下的org
  • 重新 maven install
  • idea清除缓存重启:idea-file-invalidate caches/restart-Invalidate and Restart

重新导入项目:

  • 删除maven项目: idea-maven-右键root-remove projects
  • 重新导入: 重启idea-open-pom.xml文件, 选择 delete Existing Project and Import
  • 再次运行: 正常,maven reimport 正常
  相关解决方案