Как установить путь к классу проекта Spring / Gradle для выбора файла конфигурации XML - PullRequest
0 голосов
/ 25 апреля 2018

У меня есть простой проект веб-службы на базе Spring, Gradle со следующей структурой:

UserSettingController
  src/main/java
    com.ui.usersetting.datamodel
    com.ui.usersetting.restinterface
    com.ui.usersetting.UserSettingController
  resources
    resources_deployment1
       spring-resource1.xml
    resources_deployment2
    ...

В com.ui.usersetting.datamodel есть переменная @Autowired JdbcTemplate, для которой определение появляется в resource/resources_deployment1/spring-resource1.xmlcom.ui.usersetting.datamodel также есть файл @Configuration, содержащий @ImportResource("classpath:spring-resource1.xml").

. Он создает и развертывает OK, но когда я нажимаю на одну из конечных точек, определенных в com.ui.usersetting.restinterface, я получаю следующую ошибку от Spring:

class path resource [spring-resource1.xml] cannot be opened because it does not exist

Я предполагаю, что это означает, что UserSettingController/resources/resources_deployment1/, который содержит spring-resource1.xml, не появляется в пути к классам.Я попытался исправить это, установив путь к классам в Eclipse, но поскольку я собираю с использованием команд командной строки Gradle, а не Eclipse, это исправление не работает.

Мне нужно сохранить структуру выше,вместо того, чтобы перемещать spring-resource1.xml в src/main/resources, чтобы соответствовать другим проектам в нашей группе.Итак, как я могу заставить Spring искать в нужном месте spring-resourc1.xml?

1 Ответ

0 голосов
/ 25 апреля 2018

Просто добавьте дополнительные папки resources в sourceSets. Предположим, у вас есть, например, 3 resources_deployment папки:

sourceSets {
    main {
        resources {
            (1..3).each {
                srcDir "resources/resources_deployment$it"
            }
        }
    }
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...