从svn上下的项目,部署到tomcat 7.0.19 上, 并且配置的是jdk7. 启动时出现以下问题。
java.lang.VerifyError: Expecting a stackmap frame at branch target
Location:
com/genlot/loms/service/SysPermissionService.getPermissionCollection(Ljava/lang/Long;Z)Ljava/util/Collection; @19: ifnull
Reason:
Expected stackmap frame at this location.
Bytecode:
0000000: 2ab4 01ec 2bb6 01ee 4ebb 01f4 59b7 01f6
0000010: 3a04 2dc6 010b 2ab4 01f7 2bb6 01f9 3a05
0000020: 1905 c700 0cbb 00a8 59b7 00aa 3a05 b201
0000030: fe2d b802 04b6 020a 9a00 a219 052a b401
0000040: f7b2 020b b602 11b9 0215 0200 571c 9a00
0000050: 1919 042a b200 5a2d b802 19b6 0183 b600
0000060: 50b9 021f 0200 5719 042a b202 202d b802
0000070: 23b6 0050 b902 1f02 0057 1904 2ab2 0227
0000080: 2db8 022a b600 50b9 021f 0200 5719 042a
0000090: b202 2d2d b802 04b6 0230 b600 50b9 021f
00000a0: 0200 5719 042a b202 312d b802 34b6 0050
00000b0: b902 1f02 0057 1302 372a b402 39b6 00af
00000c0: 9900 1a19 0413 023b b902 3d02 0057 1904
00000d0: 2db8 0234 b902 3d02 0057 1905 b900 7301
00000e0: 003a 07a7 0031 1907 b900 7901 00c0 023e
00000f0: 3a06 1906 b802 40b2 0246 a500 1a19 042a
0000100: b201 5519 06b8 0249 b601 83b6 0050 b902
0000110: 1f02 0057 1907 b900 f401 009a ffcb 1904
0000120: b0
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:334)
at 。。。。。。。
五月 05, 2016 9:01:28 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deploying web application directory D:\apache-tomcat-7.0.62\webapps\ROOT
五月 05, 2016 9:01:28 下午 org.apache.catalina.startup.HostConfig deployDirectory
信息: Deployment of web application directory D:\apache-tomcat-7.0.62\webapps\ROOT has finished in 47 ms
五月 05, 2016 9:01:28 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-bio-8080"]
五月 05, 2016 9:01:28 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["ajp-bio-8009"]
五月 05, 2016 9:01:28 下午 org.apache.catalina.startup.Catalina start
信息: Server startup in 14226 ms
Windows 系统下
解决办法: 修改jvm参数。添加 -XX:-UseSplitVerifier
打开springSource Tool suite( sts) (有些可能使用的是eclipse ) -----》 windows---> preferences--->java --- > installed JREs --- 选择你的jdk, 点击 edit , 添加上面的参数
Linux 环境下同理也是修改配置文件。
本人在linux 下用的是tc-server 部署的程序,所以修改方法如下
找到你的server 路径
cd opt/tc-server/project-server/bin
里面有一个 setenv.sh 的文件。打开后编辑添加上面的参数,然后保存。
Linux下修改tomcat的jvm 配置
----------------------Linux下修改TomcatJVM内存大小----------------------
要添加在tomcat 的bin 下catalina.sh 里,位置cygwin=false前 。注意引号要带上,红色的为新添加的.
# OS specific support. $var _must_ be set to either true or false.
JAVA_OPTS="-Xms256m -Xmx512m -Xss1024K -XX:PermSize=128m -XX:MaxPermSize=256m -XX:-UseSplitVerifier"
cygwin=false