Spring/Eclipse 'сослался на боб, не найденный' предупреждение, когда использование <импортирует>?

Я только что разбил бобовый конфигурационный файл Spring в меньшие внешние файлы и использовал директиву "импорта" для включения их в мой XML-файл контекста Тестового приложения Spring.

Но каждый раз, когда я ссылаюсь на один из бобов из импортированных файлов, я получаю предупреждение в Eclipse/STS/Spring XML-редакторе, жалуясь, что "сослался на боб 'нечто', не найденное"

Это, ошибка или это меня? Это является действительно раздражающим, потому что я не хочу отключать предупреждение, все же в моей компании, мы пытаемся устранить все предупреждения.

18
задан HDave 19 May 2010 в 18:47
поделиться

3 ответа

Меня это тоже раздражало!

Я не уверен, когда была введена эта функция, но в более поздних версиях можно добавить эту поддержку.

  1. Щелкните правой кнопкой мыши на вашем проекте в Spring explorer
  2. Нажмите на свойства
  3. Смотрите изображение ниже:

alt text

Я не понимаю, почему это не отмечено по умолчанию, но это работает как шарм после того, как вы включили это!

Если у вас нет этой опции в вашей версии, я настоятельно рекомендую скачать SpringSource's STS со всеми необходимыми плагинами Eclipse в комплекте.

23
ответ дан 30 November 2019 в 07:55
поделиться

1) Полезно попытаться устранить все предупреждения, но не ожидайте успеха. 10 предупреждений на проект — это нормально, 500 — нет.

2) это не ваша ошибка, это функция, которая намеренно отсутствует в STS. намеренно, потому что у них нет возможности узнать, каким будет ваш classpath среды выполнения. Конечно, они могут разрешить некоторые операторы импорта, но это было бы непоследовательным поведением. короче говоря, я научился жить с этим предупреждением

2
ответ дан 30 November 2019 в 07:55
поделиться

Согласно этой теме, это может быть похоже на:

У меня есть (по общему признанию, косметическая) проблема с плагинами Spring IDE для Eclipse, которую я не смог решить. У меня есть ситуация, в которой контекстные файлы A и B импортируются контекстом C. B использует несколько бобов, определенных в A, но поскольку они никогда не используются самостоятельно (только C), это не является проблемой.

Однако валидатор плагина Spring IDE отмечает все ссылки на бобы из A в контекстном файле B как ошибки, говоря что-то вроде "Referenced bean 'foo' not found bar.xml". Очевидно, что это правильное утверждение, но в моем случае это не ошибка.

Есть два способа решения этой проблемы:

  1. Только конфигурировать контекст C в Spring IDE и позволить другим файлам (A. B) обрабатываться поддержкой импорта. В этом случае предупреждение не появится. Убедитесь, что вы не добавляете A и B как файлы конфигурации в Spring IDE, так как они также будут проверяться отдельно, что вызовет ошибку проверки, которую вы видите.
  2. Настройте набор конфигураций для A, B и C и не включайте обработку импорта для проекта.
6
ответ дан 30 November 2019 в 07:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: