Hacker News new | ask | show | jobs
by hans0l074 1916 days ago
When I use developer tooling in other platforms I’m usually disappointed. I shouldn’t need some special native library installed on my system so I can install a dependency. It shouldn’t take me hours to get my local developer toolchain set up.

I found this comment odd - it does take some time to get a modern Java dev env up and running from scratch. For e.g. you have to at least download/install gradle or maven after the JDK. And then the author goes onto to talk about the Testcontainers project for which it appears you need to set up Docker. And so on. Wonder if I missed the meaning there.

2 comments

The Gradle wrapper is how you let gradle download itself upon first execution. It stays in your git-repo, and then you don’t need to install gradle yourself.

https://docs.gradle.org/current/userguide/gradle_wrapper.htm...

But surely if you are starting off you need to install/initialize the wrapper itself, no? From your link,

Generating the Wrapper files requires an installed version of the Gradle runtime on your machine as described in Installation. Thankfully, generating the initial Wrapper files is a one-time process.

If you’re using existing project, you don’t need to install gradle. For new projects you can copy few files from any other project. That “generation” just copies few files into your project and puts tiny config file. It should really be available as a separate tiny download IMO. Gradle makes it looking harder than it is.
You can bootstrap a fresh project using this:

https://gradle-initializr.cleverapps.io/

I think it's a shot at Ruby and Node- they have a lot of dependencies that rely on underlying C/C++ libraries so you can end up having to manage both. Things like that exist in Java (e.g. some OpenGL libraries) but they're relatively rare.