Gradle dependencies formatter for IntelliJ IDEA
Clone or download
Latest commit b0af463 Jul 23, 2018

README.md

Gradle dependencies formatter

Build Status Build Status (Windows) Coverage Status Codacy Badge codebeat badge Version Downloads

IntelliJ IDEA plugin for formatting Gradle dependencies.

Features

  • Convert a string notation to a map notation
  • Convert a map notation to a string notation
  • Sort dependencies
  • Paste a Maven dependency as a Gradle dependency (on the fly conversion)

Installation

Install using the JetBrains Plugin Repository:
File > Settings > Plugins > Browse repositories... > type gradle dependencies formatter in search form > Install plugin

Usage

Convert between a string notation and a map notation

Use Show Intention Actions action (Alt + Enter or ⌥⏎) and choose Convert to map notation or Convert to string notation.

Convert a string notation to a map notation

Sort dependencies

In order to sort dependencies open a .gradle file and use Sort Gradle dependencies action from Code menu.

Sort dependencies

Paste a Maven dependency as a Gradle dependency

  1. Copy a declaration of a Maven dependency in any editor.
  2. Paste it into gradle file to dependencies section. Plugin will automatically convert it to a Gradle dependency.

Paste a Maven dependency as a Gradle dependency

Features:

  • converts Maven dependency with groupId (required), artifactId (required), version, classifier, optional and exclusions fields
  • handles scopes: compile, provided, runtime, test
  • optional dependencies are coded using syntax defined by [Nebula Extra Configurations] (https://github.com/nebula-plugins/gradle-extra-configurations-plugin/)
  • can convert several dependencies at once

If you need to paste XML with maven dependency into gradle file without modification, please use Paste Simple action.

Note: This feature was added to IntelliJ IDEA in version 2016.3. It converts a single maven dependency at once and handles only simple cases.

Development

Build:
./gradlew build

In order to run tests with specific IntelliJ IDEA version (e.g. 2016.3) use this command:
./gradlew -P ideaVersion=2016.3 test

Run IntelliJ IDEA with the plugin intalled in: ./gradlew runIde

This project uses gradle-intellij-plugin. Please refer to it's documentation for information about configuration.

Note: Currently the project is not prepared to be imported as a IntelliJ Platform Plugin.

Changelog

0.5.3 (2017-12-19)

  • (bugfix) Unable to paste multiple Maven dependencies at once #3

0.5.2 (2017-04-09)

  • (bugfix) fixed NPE in MapNotationToStringNotationIntention#getElementPredicate

0.5.1 (2017-02-12)

  • (improvement) Run MavenToGradleDependenciesCopyPasteProcessor before built-in CopyPasteProcessors

0.5.0 (2016-03-29)

  • (feature) Sort dependencies

0.4.0 (2015-10-20)

  • (feature) Convert a map notation to a string notation
  • (bugfix) Convert string notation of a dependency with ext to a map notation

0.3.0 (2015-09-22)

  • Convert a string notation to a map notation

0.2.0 (2015-09-08)

  • Paste a Maven dependency as a Gradle dependency:
    • added support for elements classifier and optional
    • version is skipped for dependency without version

0.1.0 - initial release (2015-09-02)

  • Paste a Maven dependency as a Gradle dependency

License

This project is licensed under the MIT license.