0

Je suis actuellement déplacé maven code java de jdk7 à jdk8 qui utilise la terre cuite et fonctionnait correctement, mais après avoir changé à jdk8, mes cas de test sont en train d'échouer. Je reçois une erreur de suivi et je n'ai obtenu aucun indice à travers la recherche.test échecs cas avec java.lang.ArrayIndexOutOfBoundsException: 28526 avec 8 et en terre cuite JDK 3.4.0

java.lang.ArrayIndexOutOfBoundsException: 28526 
at com.tc.asm.ClassReader.readClass(ClassReader.java:2015) 
at com.tc.asm.ClassReader.getClassName(ClassReader.java:229) 
at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.getClassInfo(AsmClassInfo.java:305) 
at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.createClassInfoFromStream(AsmClassInfo.java:717) 
at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.getClassInfo(AsmClassInfo.java:256) 
at com.tc.aspectwerkz.reflect.impl.asm.AsmClassInfo.getInterfaces(AsmClassInfo.java:558) 
at com.tc.aspectwerkz.expression.regexp.TypePattern.matchInterfaces(TypePattern.java:147) 
at com.tc.aspectwerkz.expression.regexp.TypePattern.matchInterfaces(TypePattern.java:147) 
at com.tc.aspectwerkz.expression.regexp.TypePattern.matchSuperClasses(TypePattern.java:120) 
at com.tc.aspectwerkz.expression.regexp.TypePattern.matchType(TypePattern.java:92) 
at com.tc.aspectwerkz.expression.ExpressionVisitor.visit(ExpressionVisitor.java:437) 
at com.tc.aspectwerkz.expression.ast.ASTClassPattern.jjtAccept(ASTClassPattern.java:24) 
at com.tc.aspectwerkz.expression.ExpressionVisitor.visitAnnotatedNode(ExpressionVisitor.java:1016) 
at com.tc.aspectwerkz.expression.ExpressionVisitor.visit(ExpressionVisitor.java:237) 
at com.tc.aspectwerkz.expression.ast.ASTWithin.jjtAccept(ASTWithin.java:22) 
at com.tc.aspectwerkz.expression.ExpressionVisitor.visit(ExpressionVisitor.java:100) 
at com.tc.aspectwerkz.expression.ast.ASTExpression.jjtAccept(ASTExpression.java:22) 
at com.tc.aspectwerkz.expression.ExpressionVisitor.visit(ExpressionVisitor.java:88) 
at com.tc.aspectwerkz.expression.ExpressionVisitor.match(ExpressionVisitor.java:74) 
at com.tc.object.config.ClassExpressionMatcherImpl.match(ClassExpressionMatcherImpl.java:24) 
at com.tc.object.config.CompoundExpressionMatcher.match(CompoundExpressionMatcher.java:18) 
at com.tc.object.config.StandardDSOClientConfigHelperImpl.shouldBeAdapted(StandardDSOClientConfigHelperImpl.java:1242) 
at com.tc.object.bytecode.hook.impl.DefaultWeavingStrategy.transformInternal(DefaultWeavingStrategy.java:184) 
at com.tc.object.bytecode.hook.impl.DefaultWeavingStrategy.transform(DefaultWeavingStrategy.java:134) 
at com.tc.object.bytecode.hook.impl.DSOContextImpl.preProcess(DSOContextImpl.java:288) 
at com.tc.object.bytecode.hook.impl.DSOContextImpl.transform(DSOContextImpl.java:392) 
at org.terracotta.express.ClusteredStateLoader.transform(ClusteredStateLoader.java:124) 
at org.terracotta.express.ClusteredStateLoader.loadClass(ClusteredStateLoader.java:83) 
at org.terracotta.modules.ehcache.store.TerracottaClusteredInstanceFactory$1.call(TerracottaClusteredInstanceFactory.java:319) 
at org.terracotta.modules.ehcache.store.TerracottaClusteredInstanceFactory$1.call(TerracottaClusteredInstanceFactory.java:317) 
at org.terracotta.api.Terracotta.lookupOrCreateRoot(Terracotta.java:47) 
at org.terracotta.modules.ehcache.store.TerracottaClusteredInstanceFactory.getStoreRoot(TerracottaClusteredInstanceFactory.java:316) 
at org.terracotta.modules.ehcache.store.TerracottaClusteredInstanceFactory.getStoreMapForCacheManager(TerracottaClusteredInstanceFactory.java:77) 
at org.terracotta.modules.ehcache.store.TerracottaClusteredInstanceFactory.getOrCreateStore(TerracottaClusteredInstanceFactory.java:68) 
at org.terracotta.modules.ehcache.store.TerracottaClusteredInstanceFactory.createStore(TerracottaClusteredInstanceFactory.java:64) 
at net.sf.ehcache.terracotta.StandaloneTerracottaClusteredInstanceFactory.createStore(StandaloneTerracottaClusteredInstanceFactory.java:40) 

Merci

+0

Il semble provenir d'un mauvais modèle de correspondance: aspectwerkz.expression.regexp.TypePattern.matchInterfaces (TypePattern.java:147), et si vous vous levez il semble venir de votre config: StandardDSOClientConfigHelperImpl, ce sont les seules choses que je peux donner. Besoin d'informations – Destrif

+0

Merci pour votre réponse. Je cours les cas de test de performance dans eclipse et obtenir cette exception, s'il vous plaît laissez-moi savoir si d'autres informations sont nécessaires. – user2183017

+0

Je dirais, mettez à jour votre version de Terracotta à celle conforme à Java 8. Premier hit Google: http://forums.terracotta.org/forums/posts/list/11437.page (dit fixe quelque part entre 3.7.7 et 3.7.10) – Holger

Répondre

0

Comme il est indiqué dans l'un des commentaires, Terre cuite 3.4.0 est pas Java 8 compatible et compte tenu de la façon dont l'ancienne version en terre cuite a travaillé, ce n'est pas une surprise.

Vous devrez mettre à jour vers un later version si vous devez avoir le support de Java 8.

La version exacte dépendra de l'utilisation que vous faites de Terracotta - si vous avez besoin de support DSO, vous devez vous en tenir à la ligne 3.7.x. Pour le support Ehcache, il est recommandé de mettre à niveau vers la dernière version de la ligne 4.3.x.