MyEclipse、Eclipse、jdk、tomcat、jar文件对应版本问题

阶段一:情况项目在Myeclipse 2017 CI没办法正常编译,因此更换了工具:

Eclipse版本信息Mars.2 Release (4.5.2)


问题tomcat 7运行正常,8报错如下:

四月 12, 2017 6:06:20 下午 org.apache.catalina.startup.ContextConfig processAnnotationsJar
严重: Unable to process Jar entry [org/apache/ibatis/javassist/tools/web/ServiceThread.class] from Jar 
[jar:file:/E:/server/apache-tomcat-8.0.9/webapps/parking-cms/WEB-INF/lib/mybatis-3.4.0.jar!/] for annotations
java.io.EOFException
	at java.io.DataInputStream.readUnsignedShort(Unknown Source)
	at org.apache.tomcat.util.bcel.classfile.Utility.swallowMethodParameters(Utility.java:188)
	at org.apache.tomcat.util.bcel.classfile.Attribute.readAttribute(Attribute.java:159)
	at org.apache.tomcat.util.bcel.classfile.FieldOrMethod.<init>(FieldOrMethod.java:76)
	at org.apache.tomcat.util.bcel.classfile.ClassParser.readMethods(ClassParser.java:226)
	at org.apache.tomcat.util.bcel.classfile.ClassParser.parse(ClassParser.java:101)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:1987)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1940)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1915)
	at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1876)
	at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1145)
	at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:767)
	at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:302)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5083)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:724)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:700)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:714)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:581)
	at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1686)
	at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
	at java.util.concurrent.FutureTask.run(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at java.lang.Thread.run(Unknown Source)
总结:电脑上安装了Tomcat 7、8、9和jdk 7、8和MyEclipse 2017 CI、Eclipse 4.5.2,来回的变换JAVA_HOME和CATALINA_HOME及工具启动和Tomcat自启动,而jar包版本是用maven管理的,是否存在版本对应的问题?

阶段二:情况项目在Myeclipse 2017 CI仍然没办法正常编译,因此更换了工具:

MyEclipse 2016可以正常运行编译、其他的2017 CI也可以运行编译!

这个过程有一个异常报错(其他):

org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/parking-cms]]
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
	at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1861)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Unable to complete the scan for annotations for web application [/parking-cms] due to a StackOverflowError.
 Possible root causes include a too low setting for -Xss and illegal cyclic inheritance dependencies. The class hierarchy being processed was
 [org.bouncycastle.asn1.ASN1EncodableVector->org.bouncycastle.asn1.DEREncodableVector->org.bouncycastle.asn1.ASN1EncodableVector]
	at org.apache.catalina.startup.ContextConfig.checkHandlesTypes(ContextConfig.java:2126)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsStream(ContextConfig.java:2072)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsJar(ContextConfig.java:1947)
	at org.apache.catalina.startup.ContextConfig.processAnnotationsUrl(ContextConfig.java:1913)
	at org.apache.catalina.startup.ContextConfig.processAnnotations(ContextConfig.java:1898)
	at org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1330)
	at org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:889)
	at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:386)
	at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
	at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5380)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	... 10 more

四月 13, 2017 10:27:25 上午 org.apache.catalina.startup.HostConfig deployDescriptor
严重: Error deploying configuration descriptor C:\Users\Administrator\Workspaces\MyEclipse 2016\.metadata\.me_tcat7\conf\Catalina\localhost\parking-cms.xml
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component 
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/parking-cms]]
	at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:904)
	at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
	at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
	at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:672)
	at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1861)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at java.lang.Thread.run(Thread.java:745)

总结:也是报哪个LifecycleException异常,Tomcat对应的jdk版本不对,导致的异常!

阶段三:情况项目在Myeclipse 2017 CI没办法正常编译的情况 描述:

现象一:
初期如图:properties、spring、xml 文件夹,里面都是xml文件!


项目清理后【Project - Clean】,仅仅是这三个文件的重新生成。

正常表现(MyEclipse 2016、Eclipse 4.5.2编译过程)是三个文件手动删除后,项目刷新时,这三个文件重新生成,点击清理后如图:


重新生成这四个文件夹,cn文件夹里是java编译后的class文件。

现象二:


MyEclipse 2017 CI中把maven包删除后的一瞬间,cn文件夹可以生成,重新导入到项目中后又仅仅是那三个xml文件夹的清理生成了。

现象三:


MyEclipse 2017 CI中,第一项总是不停刷新,而正常的如下:


有点想确定这个是不是一个突破口!

延伸:

项目有红叉号的不能正常编译,且2017 CI中存在java代码报错,但文件不显示错误的标志!不报错的可以正常编译。可能真是2017 CI更新后出问题了。

总结:仍是搞不清楚,2017 CI是破解版,中途的一次升级后,注册码失效,之后重装及反复重装,好像才出现这个问题的(仅限这一个项目),因此我觉得应该是项目出现问题,或者是jdk环境与jar包的问题,也可能破解版总会这样犯神经,这个问题困扰了自己一天也只是有个模糊的认识重新下装个2016,就先告一段落吧!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值