java.lang.IncompatibleClassChangeError: Implementing class

    最近遇到个奇怪的事,Eclipse正常模式下启动maven项目可以正常运行,但是,debug模式启动就报错。
报错信息如下:

2014-9-17 13:41:04 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter struts2
java.lang.IncompatibleClassChangeError: Implementing class
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at org.apache.catalina.loader.WebappClassLoader.findClass(.:1176)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(.:1647)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(.:1526)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
	at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
	at org.apache.catalina.loader.WebappClassLoader.findClass(.:1176)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(.:1647)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(.:1526)
	at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
	at org.apache.struts2.convention.PackageBasedActionConfigBuilder.findActions(.:390)
	at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(.:347)
	at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(.:53)
	at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(.:260)
	at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(.:67)
	at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(.:446)
	at org.apache.struts2.dispatcher.Dispatcher.init(.:490)
	at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(.:74)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(.:57)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(.:295)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(.:422)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(.:115)
	at org.apache.catalina.core.StandardContext.filterStart(.:4072)
	at org.apache.catalina.core.StandardContext.start(.:4726)
	at org.apache.catalina.core.ContainerBase.start(.:1057)
	at org.apache.catalina.core.StandardHost.start(.:840)
	at org.apache.catalina.core.ContainerBase.start(.:1057)
	at org.apache.catalina.core.StandardEngine.start(.:463)
	at org.apache.catalina.startup.Embedded.start(.:825)
	at org.apache.tomcat.maven.plugin.tomcat6.AbstractRunMojo.startContainer(.:767)
	at org.apache.tomcat.maven.plugin.tomcat6.AbstractRunMojo.execute(.:353)
	at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(.:101)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(.:209)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(.:153)
	at org.apache.maven.lifecycle.internal.MojoExecutor.execute(.:145)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(.:84)
	at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(.:59)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(.:183)
	at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(.:161)
	at org.apache.maven.DefaultMaven.doExecute(.:320)
	at org.apache.maven.DefaultMaven.execute(.:156)
	at org.apache.maven.cli.MavenCli.execute(.:537)
	at org.apache.maven.cli.MavenCli.doMain(.:196)
	at org.apache.maven.cli.MavenCli.main(.:141)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(.:290)
	at org.codehaus.plexus.classworlds.launcher.Launcher.launch(.:230)
	at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(.:409)
	at org.codehaus.plexus.classworlds.launcher.Launcher.main(.:352)
2014-9-17 13:41:04 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2014-9-17 13:41:04 org.apache.catalina.core.StandardContext start
严重: Context [/tfr-scheduling-web] startup failed due to previous errors
2014-9-17 13:41:04 org.apache.catalina.core.ApplicationContext log
信息: Closing Spring root WebApplicationContext



百思不得解,网上也没找到相关信息,后来请公司大牛帮我一看,三下两下就可以正常debug,又学了一招,到于为什么要这样,没时间去了解了,如果有大牛知道,请给我留言。

解决办法:

java.lang.IncompatibleClassChangeError: Implementing class_第1张图片

java.lang.IncompatibleClassChangeError: Implementing class_第2张图片

ok,解决

你可能感兴趣的:(eclipse,spring,maven,struts,debug)