Warning

 

Close

Confirm Action

Are you sure you wish to do this?

Confirm Cancel
BCM
User Panel

Site Notices
Posted: 3/16/2021 1:46:13 PM EDT
I need to brush up on Java so that I can talk intelligently about the VMWare Java SDK. Last time I did Java, Maven didn't exist and you just pointed javac at the classpath of your jar file and went to town.

Can anyone point me to a book or a tutorial on how to come into present day?
Link Posted: 3/16/2021 4:00:25 PM EDT
[#1]
Pre-Maven, huh? That's a ways back. We're not really pointing the compiler at the classpath anymore.

Maven is meant to replace Ant, also by Apache. The idea is that you can use Maven to both configure your build scripts and fetch dependency JARs. These are primarily hosted in the MavenCentral repo, but you can configure custom repos to pull JARs from. Maven projects are configured in XML.

More recently, Gradle has begun to become the defacto standard build utility for Java. Gradle is run by company called Buildship and it uses existing Maven repos (like MavenCentral), so you have access to the same dependencies. The difference is that projects aren't configured in XML anymore, they're actually configured in Groovy. Groovy is a scripting language for the JVM. So your project XML is now a script with specialized structure that defines how the project gets built. Gradle also supports having buildscdripts in Kotlin.

Speaking of Kotlin, well, I'll stop here for now. But I highly advise not starting new Java work in Java, but in Kotlin instead.
Link Posted: 3/16/2021 4:16:52 PM EDT
[#2]
Discussion ForumsJump to Quoted PostQuote History
Quoted:
But I highly advise not starting new Java work in Java, but in Kotlin instead.
View Quote

Not my choice. It is an existing project that keeps growing.
Link Posted: 3/19/2021 9:46:35 PM EDT
[#3]
Until last month I managed a Java dev team. We discussed Maven vs Gradle and landed on Maven. They're both fairly comparable. Mostly we'd already put some projects together with Maven and it stuck. There weren't any OMG features the put one over the other.

If it's a legacy app, I presume you're not re-writing it but need to learn how to move from something like Ant. If that's the case, and you don't need it otherwise, I wouldn't expend a lot of effort learning the newer features of Java.

Baeldung seems to be chock full of info. My architect and I joked that it wrote all our code.

I'm curious what you're working on. After 25 years of development I've become an infrastructure guy. I'm spending way too much time in vCenter these days.
Close Join Our Mail List to Stay Up To Date! Win a FREE Membership!

Sign up for the ARFCOM weekly newsletter and be entered to win a free ARFCOM membership. One new winner* is announced every week!

You will receive an email every Friday morning featuring the latest chatter from the hottest topics, breaking news surrounding legislation, as well as exclusive deals only available to ARFCOM email subscribers.


By signing up you agree to our User Agreement. *Must have a registered ARFCOM account to win.
Top Top