GithubHelp home page GithubHelp logo

vanniktech / gradle-maven-publish-plugin Goto Github PK

View Code? Open in Web Editor NEW
1.2K 18.0 110.0 1.43 MB

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

Home Page: https://vanniktech.github.io/gradle-maven-publish-plugin

License: Apache License 2.0

Kotlin 99.75% Java 0.25%
gradle maven publishing kotlin android java gradle-plugin kotlin-multiplatform nexus

gradle-maven-publish-plugin's Introduction

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

For modifying what is getting published see configuring what to publish.

There is also a base plugin that doesn't apply any default configuration and allows the most customization.

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.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

License

Copyright (C) 2018 Vanniktech - Niklas Baudy

Licensed under the Apache License, Version 2.0

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.