установка classpath для задачи gradle/runconfig в intellij
Я выполняю модульные тесты в Intellij 14.1.2 с плагином Gradle. У меня есть внешние данные конфигурации и тестирования, которые находятся в среде, специфичной в наборе каталогов (каталог для каждого env). Я хочу загрузить конфигурацию и данные через classpath.
В Eclipse я просто добавлю конкретный путь env к run-config и сохранил конфигурацию как:
'Тест-XYZ-UAT1'
например.
В intellij кажется, что мой путь к конфигурации приложения привязан к моему пути к модулю: https://www.jetbrains.com/help/idea/2016.3/run-debug-configuration-application.html, как добавить каталог в classpath в профиль запуска приложения в идее intellij?
..что плохое, но для конфигураций запуска Gradle у меня даже нет возможности добавить путь к модулю.
Окно "Run/Debug Configurations" не имеет:
'Использовать classpath mod...'
раздел.
Вопрос:
Как я могу установить путь к классам конфигурации запуска при запуске задачи Gradle в Intellij?
.., и если кто-то может сказать мне, как настроить приложение, специфичное для определенных классов, будет еще лучше. (скажите, пожалуйста, что я пропустил что-то ingenius о Intellij..)
Основываясь на довольно небольшом количестве исследований и проб и ошибок, вот решение, которое работает для моего проекта Spring Boot Kotlin.
Задний план:
Конфигурация запуска проекта Spring Spring настроена на использование задачи Run Gradle вместо стандартной сборки IDEA в качестве ее конфигурации перед запуском (см. Снимок экрана ниже).
Мой проект Spring Boot использует src/main/resources/application.properties
для JPA и свойств ведения журнала.
gradle build
используются следующие выходные каталоги для сборки. Это исходные каталоги построения градиента по умолчанию для проекта Kotlin.
build/classes/kotlin/main
для основных файлов классов. build/classes/kotlin/test
для файлов тестовых классов. build/resources/main
для основных файлов ресурсов. В этом случае application.properties копируется во время сборки. Когда я попытался запустить этот проект внутри IDEA с использованием вышеперечисленной конфигурации, он не сработает при запуске Spring Boot, потому что он не может найти application.properties
внутри пути к классам. Когда я проверял путь к классам, который использовался при запуске приложения, build/resources/main
отсутствовала.
Мое решение
Используйте информацию из: Gradle Goodness: делегировать сборку и запускать действия, чтобы получить в IntelliJ IDEA делегирование сборки и выполнения IDEA в Gradle.
Когда IDEA настроен на делегирование сборки и выполнения в Gradle, основной и тестовый модули должны быть сконфигурированы следующим образом: На вкладке "Контуры" выберите "Наследовать путь к компиляции проекта".