• Stars
    star
    1,252
  • Rank 37,538 (Top 0.8 %)
  • Language
    Kotlin
  • License
    Apache License 2.0
  • Created over 6 years ago
  • Updated 3 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A Gradle plugin that publishes your Android and Kotlin libraries, including sources and javadoc, to Maven Central or any other Nexus instance.

gradle-maven-publish-plugin

Gradle plugin that creates a publish task to automatically upload all of your Java, Kotlin or Android libraries to any Maven instance. This plugin is based on Chris Banes initial implementation and has been enhanced to add Kotlin support and keep up with the latest changes.

Setup

Supported plugins

The output of the following Gradle plugins is supported to be published with this plugin:

  • com.android.library
  • org.jetbrains.kotlin.jvm
  • org.jetbrains.kotlin.js
  • org.jetbrains.kotlin.multiplatform
  • java
  • java-library
  • java-gradle-plugin
  • com.gradle.plugin-publish
  • java-platform
  • version-catalog

Advantages over maven-publish

Gradle ships with the maven-publish and many other plugins like the Android Gradle Plugin or the Kotlin Multiplatform plugin directly integrate with, so why should you use this plugin?

  • No need to know how publishing works for different project types. AGP provides an API to configure publishing, java-library too, Kotlin Multiplatform does most things automatically but not everything. This plugin configures as much as possible on its own.
  • An unified approach for all kinds of projects. Some parts require manual configuration and for those we provide an API that works regardless of whether this is a Gradle plugin, an Android library or a Kotlin Multiplatform project. This is especially useful for projects that combine multiple of these.
  • Maven central integration. The plugin makes it easy to configure publishing to Maven Central with dedicated APIs to set it up and configure everything that is required. It also avoids issues like having multiple staging repositories on Sonatype OSS and supports automatic releasing without requiring any interaction with the web interface.
  • In memory GPG signing keys. Easily sign artifacts on CI by simply setting the required environment variables, no extra setup required.
  • Gradle property based config. Easily configure the plugin with Gradle properties that will apply to all subprojects

There is also a base plugin which removes any automatic configuration and allows for a more manual configuration of what should be published.

License

Copyright (C) 2018 Vanniktech - Niklas Baudy

Licensed under the Apache License, Version 2.0

More Repositories

1

Emoji

A library to add Emoji support to your Android / iOS / JVM Application
Kotlin
1,523
star
2

gradle-dependency-graph-generator-plugin

Gradle plugin that generates dependency graphs from your project.
Kotlin
1,343
star
3

OnActivityResult

OnActivityResult annotation compiler for Android
Java
461
star
4

RxRiddles

Riddling your way to master RxJava
Kotlin
455
star
5

gradle-android-junit-jacoco-plugin

Gradle plugin that generates JaCoCo reports from an Android Gradle Project
Groovy
397
star
6

lint-rules

A set of very opinionated lint rules.
Kotlin
353
star
7

gradle-code-quality-tools-plugin

Gradle plugin that generates ErrorProne, Findbugs, Checkstyle, PMD, CPD, Lint, Detekt & Ktlint Tasks for every subproject.
Kotlin
343
star
8

RxPermission

Reactive permissions for Android
Java
189
star
9

VNTNumberPickerPreference

NumberPicker Preference for Android
Java
174
star
10

gradle-android-apk-size-plugin

Gradle plugin that generates CSV files with apk size per output and variant of an apk
Groovy
84
star
11

gradle-android-javadoc-plugin

Gradle plugin that generates Java Documentation from an Android Gradle project.
Shell
80
star
12

VNTFontListPreference

ListPreference for Android which displays fonts
Java
77
star
13

kotlin-on-code-quality-tools

Demonstration of Code Quality Tools that are applicable with Kotlin
Kotlin
45
star
14

espresso-utils

Provides helper methods for asserting a few things that Espresso does not support out of the box.
Java
27
star
15

blurhash

BlurHash support for iOS, Android and JVM via Kotlin Multiplatform
Kotlin
19
star
16

TextBuilder

Provides a Class with a builder pattern for building beautiful text super easily. Internally it uses the Spannable API.
Java
17
star
17

SpeedReader

Cross-platform SpeedReader developed with Qt
C++
16
star
18

junit-rules

A set of handy junit rules.
Kotlin
15
star
19

RxBilling

Reactive wrapper around the Android Billing API
Kotlin
13
star
20

config-home

My home directory
Shell
12
star
21

multiplatform-locale

Type Safe Kotlin Multiplatform Locale implementation
Kotlin
10
star
22

SparseBuilders

Builders for SparseIntArray, SparseBooleanArray and SparseArray
Java
7
star
23

ui

Kotlin Multiplatform UI goodies
Kotlin
3
star
24

config-sublime

My Sublime 3 configuration
Python
1
star
25

playground

Empty project with basic dependencies for testing a few things out.
Ruby
1
star