Masthash

#Gradle

Tobias Roeser
8 hours ago

I wonder if every #Kotlin user is really happy with using #Gradle? It's currently the only option to get in the comfort of fast compilation. Outside of this vender-provided ecosystem, compiling #Koltin is really slow. Much slower than my #Scala toolchain.

Jorge
20 hours ago

🗣️ Nuevo post en el blog

JBake + Gradle + Mastodon

📖 Tarea de Gradle para postear un nuevo post en el blog

#jbake #fediverse #gradle

https://jorge.aguilera.soy/blog/2023/jbake-toot.html

Benedikt Ritter
4 days ago

@mikabxl @asdf_vm @nixos_org not yet improving it although it‘s build with #gradle 😉

Jan Ekholm
4 days ago

Developing for Android is such an awful experience. An older project had to be updated to SDK 33 because Google reasons. Which means updating almost everything in the project build files. And then this pops up when everything seems to have installed, synced ok.

Gradle is such a card house of shit. I should not have to learn a new language just to build a perfectly simple app. Oh, and everything changes all the time in those fucking build files.

#android #shitfest #gradle #notfun #rubbish

JAVAPRO
6 days ago

#JCON2023 🎥 ist online: #Maven und #Gradle Side-by-Side #slideless

Stefan Hildebrandt wird Maven- und Gradle-Set-ups nebeneinander legen und typische Use-Cases mit beiden Werkzeugen lösen. Angefangen vom Dependency Management über Pl...

Jetzt Video ansehen: https://www.youtube.com/watch?v=wSRESRXRQow&list=PLFeSAZzYdUociSvSvXHoCM4TDEgvG4AZt&index=1

hildebrandttk@mastodon.social

JCON
6 days ago

#JCON2023 🎥 ist online: #Maven und #Gradle Side-by-Side #slideless

Stefan Hildebrandt wird Maven- und Gradle-Set-ups nebeneinander legen und typische Use-Cases mit beiden Werkzeugen lösen. Angefangen vom Dependency Management über Pl...

Jetzt Video ansehen: https://www.youtube.com/watch?v=wSRESRXRQow&list=PLFeSAZzYdUociSvSvXHoCM4TDEgvG4AZt&index=1

hildebrandttk@mastodon.social

Tobias Roeser
1 week ago

Any idea how to achieve #Kotlin incremental compilation without IntelliJ #IDEA or #Gradle? Is it even possible from the CLI? Is there some Java/Kotlin API and documentation?

I'd like to integrate it into Mill / mill-kotlin plugin.

#MillBuild

Cédric Champeau
2 weeks ago

Drowning into #Gradle 8.3 attribute resolution breaking changes...

Franz
2 weeks ago

You are using #gradle in version 8 and wonder about thousands of messages about file system watching? You might want to upvote my bug report at #GitHub 🙂

https://github.com/gradle/gradle/issues/26350

Harsh Shandilya
2 weeks ago

I was bored last night so decided to look into #Gradle sync performance for the $DAYJOB codebase, it averaged around 6 minutes when downloading all dependencies with over 1m30s being wasted in failed HTTP requests. After some massaging with `exclusiveContent` sync is now down to 3m17s with zero HTTP failures :blobDab:

Justin Lee
3 weeks ago

I made an almost certainly silly thing. It's a #maven plugin to support building #gradle modules in an otherwise maven project. Crazy? Maybe but it scratches an itch of mine. :)

https://github.com/evanchooly/graven

Jon Yoder
3 weeks ago

Finally got things going in #Gradle. I can't help but wonder why it is that so much in software development is unnecessarily difficult.

On the plus side, integration test code is finally well under way. Onward!

Jon Yoder
3 weeks ago

Almost 3 hours straight failing at writing a simple #Gradle Kotlin DSL script that runs a integration test in what amounts to a stub project.

I feel like such a loser.

Jon Yoder
3 weeks ago

TIL one really annoying thing about #Gradle is that there are at least 6 different ways of specifying plugins.

Special case notation for certain blessed plugins or classes just makes things harder for beginners like me. *sigh*

1. id("org.jetbrains.kotlin.jvm") version "1.9.0"
2. kotlin("jvm")
3. application
4. apply<JavaPlugin>()
5. apply(plugin = "java")
6. `jvm-test-suite`

This is both tiring and infuriating to learn.

📝 Gradle Changelog Plugin 2.2.0 is here

🤨 What’s that?
🔥 This plugin for the Gradle build system ships a set of tasks and helper methods to simplify working with changelog files!

If you pass change notes to your community and use #gradle, go for it 👇
https://github.com/JetBrains/gradle-changelog-plugin

Jendrik Johannes
4 weeks ago

org.gradle.api.provider.Property<>

org.gradle.api.provider.Provider<>

These concepts changed how #Gradle projects (should) look today.

I talk about why they were introduced and when/how you work with them.

#UnderstandingGradle

https://www.youtube.com/watch?v=n8Tgr4aLB18&list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE

Understanding Gradle #34 – Properties and Providers
Jendrik Johannes
1 month ago

#Gradle supports different options to write plugins. This is good, because it gives you the choice to use what fits your context. Any you should always write plugins - if only to organize your project's build configuration.

But it is confusing 😖. That's why I created this overview:
https://github.com/jjohannes/gradle-plugins-howto

Learn by exploring the difference between writing the same Gradle plugins in:

- Gradle Kotlin DSL
- Gradle Groovy DSL
- #Java
- #Kotlin
- #Groovy
- #Scala
- #Clojure

Brian Vermeer
1 month ago

How to create SBOMs in Java with Maven and Gradle https://t.co/hwfpkOJCUY
#Java #Maven #Gradle #SBom #Security https://t.co/DQtY6gWN2n

Hey @androidweekly,
As usual thanks for the support and promoting my video about Gradle Version Catalog ❤️🎥

https://youtu.be/WEOwFkf127E

#ADT #AndroidDeveloperTips #Video #YouTube #Android #AndroidDev #Kotlin #KotlinDev #gradle #versioncatalog

I wrote a blog post about how #Gradle avoids #Java compilation and how that compares to header JARs, with performance measurements! https://blog.gradle.org/our-approach-to-faster-compilation

Steven Hugg
1 month ago

#Gradle: The platonic ideal of both technical debt and bitrot in an easy-to-download .zip file

🎥 Learn how to use the Gradle Version Catalog in Android projects. 📱👏

In this video, I show how this powerful tool can help you manage dependencies and plugins in a type-safe way. 💯

🔗https://youtu.be/WEOwFkf127E

#VersionCatalog #Gradle #Android #AndroidDev #AndroidDeveloperTips #ADT

Stay tuned for the new video I just finished recording about the Gradle version catalog in Android projects 🎥🔴

https://youtube.com/@AndroidDeveloperTips/

#ADT #AndroidDeveloperTips #Video #YouTube #Android #AndroidDev #Kotlin #KotlinDev #Gradle #VersionCatalog

André Gasser
1 month ago

Today, I have upgraded #BigBone to latest #Gradle 8.3. Also, the bookmarks API found its way into the lib.

https://github.com/andregasser/bigbone/pull/252

Small steps, but moving forward.

Now time to get some rest.

#Mastodon #Java #Kotlin

Michal Špondr
1 month ago

2 dny se crcám s certifikáty pro firemní Artifactory server, aby z něj dokázal #Gradle tahat balíčky. A zatím bez úspěchu. Chybové hlášky moc nepomáhají ("unable to find valid certification path to requested target"), přes keytool už jsem přidal certifikátů několik a několikrát; neúspěšně.

Já snad vymyslím skript, který to bude z Artifactory tahat sám než luštit, jak Gradle vnutit, co chci. :)

A nebo budu místo vývoje další dny řešit, jak fungují certifikáty v #Java build systémech.

Chris Wensel
1 month ago

I don't think i've ever seen a "clone" task api in #java #gradle

for example, making multiple versions of the 'run' command with minor variations on the arguments list..

Felix Neumann
1 month ago

#Maven treats every project as a regular standard project. … #Gradle claims that lack of flexibility is an issue; hence, it wants to fix it.

I stand by the opposite: lack of flexibility for my build tool is a feature, not a bug.“

https://foojay.io/today/my-final-take-on-gradle-vs-maven/

RT @foojay

Jendrik Johannes
1 month ago

(in German)

In der neuen Ausgabe (05/2023) der Java aktuell geht es um Build Tools. Da darf ein Artikel von mir natürlich nicht fehlen. Unter der Überschrift "Anwendungen mit Java-Modulen und Gradle elegant strukturieren" schreibe ich darüber, wie ihr die Stärken des Java-Modul-Systems und Gradle kombiniert.

Die digitale Fassung des Magazins gibt es hier kostenlos:
https://shop.doag.org/zeitschriften/id.206.java-aktuell-05-2023-build-tools

#Java #Gradle #JPMS #Modularity

Heading: Anwendungen mit Java-Modulen und Gradle elegant strukturieren
Jon Yoder
1 month ago

A weekend learning #Gradle. Not sure I feel completely comfortable just yet, but I think this is going to ultimately pay off.

#Programming

bondolo
2 months ago

It really pisses me off that printing the task dependency tree isn’t a built in #gradle feature and barely supported by plugins. It is a build tool. It should do that.

Deven Phillips
2 months ago

I really enjoyed this article comparing experiences between #Maven and #Gradle by @frankel - And I agree with the points raised. Moreover, my experience has been that even if you do develop a custom Gradle plugin, they tend to break from version to version and that was painful. #Java #JVM #CICD

https://blog.frankel.ch/final-take-gradle/

Chris Boyle
2 months ago

Android Gradle Plugin experts, any ideas why I can't generate Kotlin source in my build? https://stackoverflow.com/q/76855573/6540 #AndroidDev #Gradle

BT Writes Code
2 months ago

A one-day build idea:

I use the HTTP request actions in #Tasker to automate the creation of time entries in #Toggl, but that's been pretty darn flaky for me recently. Not sure if that's my internet, my phone, or Toggl's API blocking my requests.

Tasker provides a library and POC code for creating native plugins. So, let's try that! It's an excuse to get back into some #Flutter development, and it'll force me to get exposed to #Gradle and #Kotlin.

Time to give it a shot!

Nicolas Fränkel
2 months ago

In this post, I’d like to shed some light on my stance regarding #gradle, so I can direct people to it instead of debunking the same "reasoning" repeatedly.

https://blog.frankel.ch/final-take-gradle/

#ant #maven #buildtools #hype #java

Chojo
2 months ago

I wrote a blog post about #minecraft plugin development for #paper and #spigot using #gradle.
With the eco system the minecraft community build around gradle it is simply the best build tool out there for minecraft development
The guide is not only for people who use gradle already, but also for beginners which never used gradle before c: Give it a try!

https://chojo.dev/blog/2023/08/04/minecraft-development-with-gradle-basic-and-advanced-a-guide/

Chris Wensel
2 months ago

after 10+ years, I think i'm getting the hang of #gradle.

but tbh, scripting in #kotlin has been the catalyst. I never knew if I was fighting groovy or gradle prior. was always very frustrating.

Chris Wensel
2 months ago

picocli is a great #java library.

with a little #gradle #kotlin voodoo, I was able to generate asciidoc/man files for all the cli command option for integration into the Antora documentation generator.

https://docs.clusterless.io/reference/1.0-wip/commands/cls.html

Jendrik Johannes
2 months ago

Hi 👋 I am Jendrik and I do software build automation and improve developer productivity using #Gradle – with focus on #Java #JVM #Android #Kotlin

🎞️ My ongoing Understanding Gradle video series:
https://youtube.com/@jjohannes

✨ Gradle plugins and examples
https://github.com/jjohannes

📚 My Modern Gradle Fundamentals online course https://www.udemy.com/course/modern-gradle-fundamentals/?referralCode=3AC1B96C0EBE6F4FBE6E

Jendrik Johannes
2 months ago

Dealing with such (unavoidable) complexity has always been problematic in the JVM ecosystems. So it is exciting what #Gradle offers today (which we did not have ~3 years ago) if we use it smartly. And there is no other build tool with comparable features right now.

Jendrik Johannes
2 months ago

How to structure software projects with #Gradle?

A thread 👇

https://github.com/jjohannes/gradle-project-setup-howto

Al Sutton
2 months ago

Just one of those days when I'm reminded that the only reason we use #Gradle in our builds, and don't explore other options, is the choice by #Google to not support other tools as first class citizens.

To me it's one of the best examples of why monopolistic environments are bad.

(Context: I've worked on build tooling, I do use Gradle build scans to optimise our builds, this isn't just a random opinion of the day)

Yuna
2 months ago

java-info-action 1.11.0 🎉 Remove node modules for easier development - Thx to mehdi-ra Try it out! https://github.com/marketplace/actions/java-info-action #GitHubActions #java #maven #gradle #workflow #github #githubactions #githubaction @github

Ken Kousen
2 months ago

Video version of Tales from the jar side, for the week of July 10 - 17, 2023. Creating and expanding zips and jars in Gradle (featuring Groovy vs Kotlin), experiments with AI, and the usual silly assortment of tweets, toots, skeets, etc

#gradle #groovy #kotlin #ai #chatgpt #claude #bard

https://youtu.be/Z8pgIp5nP_g

Ken Kousen
2 months ago

Tales from the jar side, including how to zip and unzip files using Gradle (with a rant about Groovy vs Kotlin), some more AI experiments, and the usual silly tweets and toots and skeets oh my
#gradle #groovy #kotlin #AI
https://kenkousen.substack.com/p/tales-from-the-jar-side-archives?utm_source=mastodon&sd=pf

Isa Garrido
3 months ago

So #intellij introduce their AI Assistant 🤖 on their last Intellij Ultimate EAP release, I've been using it for a week or so for my #kotlin #gradle #springboot projects and it's pretty great! I wrote and record a small demo of the automatic commit message generation 🔮 https://isabeliita90.hashnode.dev/bye-bye-wip-commits
what do you think? will you use it? :blobcatnerd:

Arne Babenhauserheide
3 months ago

I stopped feeling bad about #autotools files (configure.ac Makefile.am m4/*) when I realized how much noise a new maven package throws on your disk.
The main difference is: for #maven / #npm / #cargo / #gradle / #bazel / ... these are autogenerated.

That’s why I started #conf: https://hg.sr.ht/~arnebab/conf — auto-generation for autotools projects with `conf new --lang <language>`.

It needs more templates … contributions welcome!
(just send me a patch or a link to pull from)
#gnu #make #freesoftware

Jendrik Johannes
3 months ago

Maven Central and Gradle Plugin Portal should have never allowed to publish dependencies with not-fixed versions.

If you don't check your transitives carefully, something might sneak in. And you have non-reproducible builds. Which you only notice once something breaks.

#Gradle #Maven #Java #Dependencyhell

Jendrik Johannes
3 months ago

Almost 4 years ago, I wrote a blogpost about why Gradle introduces a new metadata format to overcome limitations of the POM format.

https://blog.gradle.org/guava

As example, I explored the widely-used Google Guava library.

We also proposed to Guava to publish this metadata (which was a bit involved as they build with Maven+ShScripts).

Yesterday, my PR was merged! Sometimes persistence and patience pays off in the open source Java ecosystem.

#Gradle #Java #Android #Opensource

Jendrik Johannes
3 months ago

Testing #Java Modules (in #jpms) can be painful at first. But a good test setup with modules brings your test runtime closer to production, as it does not (always) mix production and test code at test runtime. (Which, traditionally, most Java projects do.)

Interested in more? Watch my latest Understanding #Gradle video:

https://www.youtube.com/watch?v=6rFEDcP8Noc&list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE

Understanding Gradle #33 – Classpath and Module Path in Testing
Text Adventure
3 months ago

@kittell They reply: "All these egregious clowns want is to quit skdman! ( ) #gradle"

Al Sutton
4 months ago

Even after all this time I'm still not a fan of #gradle. I use it because that's where the support is for #android development, but, on a purely build bases, #bazel and #buck are, in my experience, more robust build tools.

Today's "Nope, still don't like it" trigger was having a gradle build fail with "Gradle build daemon disappeared unexpectedly..." when the build has been specified as to not use a daemon. That's either poor parameter naming, or documented parameters being ignored.

Yuna
4 months ago

Back to Maven? I get the feeling that we add unnecessary complexity. When Gradle is the answer, then you probably do too much custom stuff or just follow the hype. https://novaannabella.github.io/the_unspoken/back_to_maven/ #Development #Gradle #Maven #CI_CD

Ian Brown :verified:
4 months ago

I think I'm falling in love with #Gradle buildscans.

Chris Wensel
4 months ago

just bookmarked this handy #java #gradle web tool

https://gradle-kotlinize.web.app

Chris Wensel
4 months ago

the #gradle plugin for jsonnet is now 1.0.0 and will work with #Java 11

https://plugins.gradle.org/plugin/io.github.chklauser.sjsonnet

Angel Munoz
5 months ago

Hey #kotlin devs, how do you distribute apps these days?
Let's say I write a CLI app in Kotlin, how would I distribute this easily?

in .NET I can simply make it a "dotnet tool" and that CLI app will be available either locally or globally depending on the user's choice but I can also build standalone binaries to distribute via :
dotnet publish

Can some one give me pointers here?

#gradle #java #kotlin #softwaredevelopment

Ready for review
5 months ago

Pünktlich zum Feiertag beglücken wir euch mit einer neuen Folge 🎉
Neben Omas Sonntagessen 🐂 gibt es auch ein Backen Spezial 🍰 .

Mechanische Tastaturen kommen langsam wieder ⌨️ und als Thema gibt es ein #gradle #deepdive und #git

Viel Spaß beim Hören.

https://ready-for-review.dev/2023/05/01/rfr046-trekkies-und-gradle/

undefined
Cédric Champeau
5 months ago

It is crazy that developers think that deleting #Gradle caches is going to fix their dependency resolution problems. It won't : Gradle is _reliable_., deleting the caches will put the tool in a bad state. If it doesn't refresh a dynamic dependency like SNAPSHOT, use `--refresh-dependencies`, that's all.

Cédric Champeau
5 months ago

As for the use of #Kotlin in #Gradle, let me tell you a story. A few years back, when I joined #Gradle, my first job was to optimize #Groovy script compilation to make Gradle startup faster. I delivered, and no one barely notices Groovy script compilation times in #Gradle. Now, try #Kotlin scripts. It's orders of magnitude slower, and you have to download a 50MB+ compiler dependency.

Cédric Champeau
5 months ago

I am _not_ writing any production code in #Groovy. I am not writing #Gradle plugins in Groovy either. For that, I use #Java. Note that I'm not using #Kotlin either. While I think #Kotlin has a sweet spot for #Android and multi-platform development, I think #Java has significantly evolved in the latest versions, making it way less verbose and even compelling. It still lacks some features of both #groovy and #kotlin, but it's extremely pragmatic and rock solid.

Cédric Champeau
5 months ago

For example, I am writing tests using #SpockFramework (https://spockframework.org) and have yet to find something more elegant and practical than this to write tests. Unfortunately not usable in all contexts (e.g native) because of the dynamic nature of #groovy .

I am also using #groovy with #gradle itself, but I prefer #kotlin scripts in most situations. But the static nature of the language makes some patterns quite hard to implement (e.g https://github.com/gradle/gradle/issues/15383)

Cédric Champeau
5 months ago

I see a lot of comments after the announcement from #Gradle that they would default to #Kotlin as a DSL, rather than #Groovy. Some asking "what's left to #Groovy".

A few comments. First, I have contributed a lot to #Groovy . For example, I contributed many AST transformations, as well as the static compiler. A few years ago, I left the project, but I am still using Groovy _everyday_.

This #Maven and #Gradle plugin generates #TypeScript definition files from #Java JSON. It helps us a lot when frontend and backend teams collaborate: https://github.com/vojtechhabarta/typescript-generator

Cédric Champeau
7 months ago

Reminder: if you use `dependsOn` in #Gradle, you are likely doing it wrong. https://melix.github.io/blog/2021/10/gradle-quickie-dependson.html

Jendrik Johannes
7 months ago

@aeveltstra issue with file encoding in Java is often that it takes the system defaults when a new JVM is started. #Gradle runs the tests in separate JVMs for parallelization. It unfortunately does not have a 'central' setting for file encoding. You can set it for the "Test Worker JVMs" by configuring the tests tasks with

systemProperty("file.encoding", "UTF-8")

Example: https://github.com/jjohannes/understanding-gradle/blob/main/19_The_Test_Task/my-build-logic/java-plugins/src/main/kotlin/my-java-base.gradle.kts#L31

More on this:
https://www.youtube.com/watch?v=YJjNQJSaFww&list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE

Ænðr E. Feldstraw
7 months ago

Why does #gradle run my #java #unittest in the character encoding windows-1252, when everything in the project is set to use UTF-8? Using #JUnit gets the tests passed. Using gradle it gets them failed. And I would love to know why!

Gradle
7 months ago

🤖 Tips and Tricks from the #Gradle Community

Tracing #Java Dependencies With Gradle — guides you through the options to understand your #dependencies, including how to use dependencyInsight - https://mckornfield.medium.com/tracing-java-dependencies-with-gradle-98dd93f8e973

#GradleTipshttps://mckornfield.medium.com/tracing-java-dependencies-with-gradle-98dd93f8e973

Jendrik Johannes
7 months ago

Want to see the real thing? This example – inspired by real world™️ projects – shows how a #Gradle setup, with all aspects to care about in a #Java project, can look like (with variations for #jpms #Springboot #Android #Kotlin) 🏢

https://github.com/jjohannes/gradle-project-setup-howto

Jendrik Johannes
7 months ago

If there is one concept to understand to make sense of #Gradle, it's Gradle's Plugin System. You can choose between #Kotlin, #Groovy or #Java to configure your project with Gradle plugins. My 'Gradle Plugins How-To' gives an overview 🧩

https://github.com/jjohannes/gradle-plugins-howto

Jendrik Johannes
7 months ago

A few hours ago #Gradle 8.0 was released! 🎉
Time to think about updating your Gradle 3/4/5 (or #Maven or #Ant) #Java project to a modern Gradle version!

Why?
Performance 🚀
Customizability 🧩
Maintainability ✨
And no more Dependency Hell 🔥

I have resources for you! 👇

Paul Merlin 🍿
8 months ago

On January 11th 2023, #gradle was contacted by MinecraftOnline about two unusual and suspicious Gradle wrapper JARs found in some of their repositories.

Read about the story here
https://blog.gradle.org/wrapper-attack-report

Read about how to protect yourself against such #supplychainattacks here
https://blog.gradle.org/project-integrity

Gradle
9 months ago

Starting in #Gradle 7.6, Gradle can download #JVM toolchains from arbitrary repositories. By default, Gradle downloads toolchains from #Adoptium/#AdoptOpenJDK. You can now override the default providers with repositories of your choice using a toolchain resolver plugin.

https://docs.gradle.org/7.6/release-notes.html#:~:text=Added%20support%20for%20Java%20Toolchain%20downloads%20from%20arbitrary%20repositories

Josh Grant
10 months ago

How to fuzz Java projects in Gradle using CI Fuzz CLI

We open-sourced CI Fuzz CLI, a fuzz testing solution for Java, that integrates into JUnit and other popular dev tools.
I’ve created a tutorial to show how easy it can be to uncover vulnerabilities in Java applications using CI Fuzz CLI in #Gradle.

More of this in my live stream next week: https://www.code-intelligence.com/webinar/beyond-unit-testing

#javasecurity #testautomation #fuzzing #JUnit