установка classpath для задачи gradle/runconfig в intellij

80
7

Я выполняю модульные тесты в 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..)

спросил(а) 2017-01-25T23:34:00+03:00 3 года, 8 месяцев назад
1
Решение
80

Основываясь на довольно небольшом количестве исследований и проб и ошибок, вот решение, которое работает для моего проекта Spring Boot Kotlin.

Задний план:

Конфигурация запуска проекта Spring Spring настроена на использование задачи Run Gradle вместо стандартной сборки IDEA в качестве ее конфигурации перед запуском (см. Снимок экрана ниже).

enter image description here

Мой проект 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, основной и тестовый модули должны быть сконфигурированы следующим образом: На вкладке "Контуры" выберите "Наследовать путь к компиляции проекта".

ответил(а) 2017-08-18T18:10:00+03:00 3 года, 1 месяц назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема