A user in #kotlin on Freenode asked how to run a Kotlin script. While the Kotlin docs are pretty clear on how to do that, I thought I'd make a quick post to show how to make an easily executable Kotlin script.
With my recent job change, I've gotten a chance to use Spring Boot in anger a bit. It's been fun, and I've learned a fair bit about the current state of Spring (I still love you, Jakarta EE !). One of my tasks involved adding a query method to a repository, and I wanted to make sure the query worked before I pushed it upstream. To do that confidently, of course, required a unit test. In this post, I'll show how remarkably simple it is to test Spring Repositories using Flyway to set up schemas and test data.
I recently found myself writing a test that needed a database. Unfortunately, our testing database, H2 , doesn't support all of the features of our production database, PostgreSQL . This meant that the Flyway migrates used to manage the production database broke in the testing environment. The fix for this turned out to be pretty simple.
Development environments can get fairly complex, and making sure you're using the right version of some library or another can be annoying on the best of days. I have a situation like that where my "day job" requires (still, and hopefully not for much longer) JDK 8, but my side projects, learning efforts, etc. can use a more modern version.
Years ago, Charles Nutter shared a shell script he uses to switch JDKs. I've been happily using it, but I've made some minor tweaks, so I thought I'd share my version here in case it helps someone (and make it easier for me to find in the future ;).
UPDATE: It seems the original author is Nick Sieger . Thanks to you as well, Nick, for a great little utility!
Recently, in the #kotlin channel on Freenode , a user asked a question about what was happening to his Java code when using IDEA's convert-to-Kotlin functionality. He left before anyone had the time to answer, and while he likely doesn't read my blog, I'm going to answer his question here anyway. :)