Я сталкиваюсь с org.springframework.beans.factory.NoSuchBeanDefinitionException после завершения обфускации.
Есть ли способ избежать изменения имен компонентов , я пробовал такие правила, как -keep, чтобы сохранить весь класс, или -dontobfuscate, несмотря на то, что это всегда вызывает вышеупомянутое исключение.
private Object getService(String serviceName) {
return getInstance().getSpringContext().getAutowireCapableBeanFactory()
.getBean(serviceName);
После обфускации в SpringContext отсутствует ряд bean-компонентов, из-за чего он выдает ошибку.
Я просматривал другие вопросы, касающиеся проблемы, с которой я столкнулся. столкнулся, но так и не нашел ответа
Существует ли правило, которое специально предотвращает изменение имен компонентов, или это плохая идея запутывать проект Spring, или существуют ли другие методы запутывания проектов Spring? .
Я пробовал использовать @ComponentScan и указал имя, но это не решает проблему, я уже использовал @Named и указал имя.
Класс, для которого выдается исключение:
//@Named("InterfaceMasterService")
//@Component("InterfaceMasterService")
@Service("InterfaceMasterService")
@Transactional("Transactional")
public class InterfaceMasterService {
Декомпилированный класс после обфускации
@Service("InterfaceMasterService")
@Transactional("Transactional")
public class InterfaceMasterService {
Подробнее здесь: https://stackoverflow.com/questions/783 ... -framework
Обфускация проекта Java Maven с помощью Spring Framework ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение