я работаю на портлетах проект с использованием Java8 и Spring 4.1.5Спринга инъекция 4 зависимости не удается при использовании замыкания
У меня есть класс с аннотацией @Service
, который включает эту линию (такой же провал с любым закрытием)
user.getOrganizations().stream().forEach(o -> System.out.println(o));
Когда я раскрываю свой веб-приложение, я получаю следующее сообщение об ошибке (опуская массивную стека, след)
org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: file [C:\dev\liferay-developer-studio\DeveloperStudio\workspace\somepath\service\MyService.class];
nested exception is java.lang.ArrayIndexOutOfBoundsException: 52264
....
Caused by: java.lang.ArrayIndexOutOfBoundsException: 52264
at org.springframework.asm.ClassReader.readClass(Unknown Source)
Мои зависимости в MVN выглядеть следующим образом:
myGroupId:myArtifactId:war:0.0.0-SNAPSHOT
+- com.liferay.portal:portal-service:jar:6.2.10.11:provided
+- com.liferay.portal:util-bridges:jar:6.2.10.11:provided
+- com.liferay.portal:util-java:jar:6.2.10.11:provided
+- com.liferay.portal:util-taglib:jar:6.2.10.11:provided
+- javax.portlet:portlet-api:jar:2.0:provided
+- javax.servlet:servlet-api:jar:2.5:provided
+- javax.servlet.jsp:jsp-api:jar:2.2:provided
+- org.springframework:spring-webmvc-portlet:jar:4.1.5.RELEASE:provided
| +- org.springframework:spring-beans:jar:4.1.5.RELEASE:provided
| +- org.springframework:spring-context:jar:4.1.5.RELEASE:provided
| | +- org.springframework:spring-aop:jar:4.1.5.RELEASE:provided
| | | \- aopalliance:aopalliance:jar:1.0:provided
| | \- org.springframework:spring-expression:jar:4.1.5.RELEASE:provided
| +- org.springframework:spring-core:jar:4.1.5.RELEASE:provided
| | \- commons-logging:commons-logging:jar:1.2:provided
| +- org.springframework:spring-web:jar:4.1.5.RELEASE:provided
| \- org.springframework:spring-webmvc:jar:4.1.5.RELEASE:provided
+- org.springframework:spring-test:jar:4.1.5.RELEASE:test
+- org.mockito:mockito-all:jar:1.10.8:test
+- junit:junit:jar:4.11:test
| \- org.hamcrest:hamcrest-core:jar:1.3:test
+- org.powermock:powermock-module-junit4:jar:1.5.1:test
| \- org.powermock:powermock-module-junit4-common:jar:1.5.1:test
| \- org.powermock:powermock-reflect:jar:1.5.1:test
| \- org.objenesis:objenesis:jar:1.2:test
+- org.powermock:powermock-module-junit4-rule-agent:jar:1.5.1:test
| +- org.powermock:powermock-module-javaagent:jar:1.5.1:test
| \- org.powermock:powermock-core:jar:1.5.1:test
| \- org.javassist:javassist:jar:3.18.0-GA:test
\- org.powermock:powermock-api-mockito:jar:1.5.1:test
\- org.powermock:powermock-api-support:jar:1.5.1:test
Каждое решение, которое я нашел до сих пор говорит: «Если вы используете пружину 3 обновления до весны 4», но я уже использую его
Любые идеи ?
Приветствие
Почему CGLIB на верхнем уровне дерева зависимостей? Я ожидал бы, что это переходная зависимость Spring, а не явная декларация. – skaffman
Вы правы, спасибо, что указали это. Я удалил CGLIB, но я все равно получаю ту же ошибку –
Можете ли вы опубликовать аннотированный класс '@ Service'? Где именно эта линия? –