Налагодження Groovy скриптів з Grape на основі maven aether

В IntelliJ Idea виникають складнощі з налагодженням таких скриптів, так як для налагодження groovy IDE використовує збірку груви за замовчуванням, з Ivy провайдером для Grape.





На новорічних святах нарешті видався час вирішити проблему з налагодженням сценаріїв, які запускаються за допомогою складання груви groovy-grape-aether.

Чим краще maven aether порівняно з IvyВідповідь на питання навіщо потрібен Grape на основі maven ефір і чим він краще Ivy провайдера описував у статті «Вулична магія в скриптах або що пов'язує Groovy, Ivy і Maven?».


Створимо Gradle проект із залежністю 'com.github.igor-suhorukov:groovy-grape-aether:2.4.5.1' або pom.xml для maven:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.github.igor-suhorukov</groupId>
<artifactId>debug-example</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>com.github.igor-suhorukov</groupId>
<artifactId>groovy-grape-aether</artifactId>
<version>2.4.5.1</version>
</dependency>
</dependencies>
</project>


Імпортуємо проект Idea. Як приклад скрипта для відладки можна взяти crawler.groovy з публікації «Що нам коштує сайт розпарсити. Основи webdriver API».

Створимо конфігурацію для налагодження в IDE: main class com.github.igorsuhorukov.GroovyMain, а в якості параметрів вкажемо ім'я groovy скрипта і після перерахуємо аргументи скрипта.



Розставимо крапки останова в скрипті, і java код, який викликається з нього.

Описане у примітці рішення дозволяє проводити налагодження скриптів c maven Grape в Idea так само, як і налагодження звичайного groovy і java додатки.

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.