client-java icon indicating copy to clipboard operation
client-java copied to clipboard

Gradle as alternative build tool

Open ice1000 opened this issue 7 years ago • 8 comments

(Maybe I can help)

ice1000 avatar Nov 15 '18 19:11 ice1000

What gradle can do:

  • Basic dependencies management
  • Fat Jar (a jar including all external dependencies)
  • Easy custom plugin written in Java/Groovy/Kotlin
    • So that we can do JNI generation (might be helpful)

ice1000 avatar Nov 15 '18 19:11 ice1000

Great!!! PTAL @birdstorm

siddontang avatar Nov 16 '18 07:11 siddontang

Also, I can help with maven package manager source deployment (bintray, jcenter and jitpack).

ice1000 avatar Nov 16 '18 17:11 ice1000

We may need an account for PingCAP Inc. (maybe some admins should go to https://bintray.com/, register an account and give me the API token to publish libraries, then people can use this java client from their package manager's built-in dependency management to download this package)

ice1000 avatar Nov 16 '18 17:11 ice1000

The Gradle build is temporarily disabled for the client now due to:

  • multiple tools (Maven, Gradle) makes maintenance complicated for dependency management.
  • some plugins support Gradle/Maven only.

Once they are fixed, we can add Gradle build back.

birdstorm avatar Mar 28 '21 10:03 birdstorm

Could you illustrate more about why we need to adopt Gradle as the build tool? for example:

  1. What are the problems you met with maven? Can they be solved gradle?
  2. What are the functions you wish to have that maven can not provide but gradle can?

zz-jason avatar Dec 23 '21 07:12 zz-jason

I found that gradle's maven publication plugins are much easier to use, and the maven's maven publication plugin doesn't support Java 17 (it means that if you are working with a JDK 17 installed on your machine, you can't publish your project). See https://issues.sonatype.org/browse/NEXUS-26993

ice1000 avatar Dec 23 '21 12:12 ice1000

If publication is not an issue then staying with maven is probably fine :/

ice1000 avatar Dec 23 '21 12:12 ice1000