jhipster / jhipster-lite

JHipster Lite ⚡ is a development platform to generate, develop & deploy modern web applications & microservices architecture, step by step - using Hexagonal Architecture :gem:
https://lite.jhipster.tech
Apache License 2.0
468 stars 215 forks source link

Supports Spring Boot Kotlin and Jimmer(Java&Kotlin) #11301

Open BingZi-233 opened 2 weeks ago

pascalgrimaud commented 2 weeks ago

Adding the support of Spring Boot + Kotlin is not hard, but the problem would be for maintainer Do you want to provide the feature and maintain it @BingZi-233 ?

BingZi-233 commented 2 weeks ago

I think I can maintain it, and I decided to abandon another plan for jhipster-lite.

BingZi-233 commented 2 weeks ago

Too bad I can't find an easy way to add what I want to add.

pascalgrimaud commented 2 weeks ago

The first step is simply to add a new module: maven-kotlin in java-build-tool group:

image

pascalgrimaud commented 2 weeks ago

Then, the 2nd module would be: kotlin-base, which is similar to java-base but for kotlin.

With these 2 modules, we'll be able to start to code a kotlin library. The Spring Boot module for kotlin must be done later, after these 2 modules

pascalgrimaud commented 2 weeks ago

That's why I asked you if you want to code these modules and maintain them, as it's a lot of work. Not sure in the core team, we'll have the bandwidth to maintain something we don't use ;-)

BingZi-233 commented 2 weeks ago

I've tried to do this locally, Kotlin only relies on Gradle modules. It's not clear to me how to add the Kotlin plugin to Gradle's template at the moment. I'm still trying to add it, hopefully it won't mess up. Although I didn't see the reply until I had already finished adding, I was hoping that I had complied with the relevant specifications. QQ_1730818137329 QQ_1730818219982

BingZi-233 commented 2 weeks ago

Kotlin support only needs to add a plugin to Gradle and doesn't affect any other parts.

BingZi-233 commented 2 weeks ago

I wanted to add a Gradle plugin of type kotlin("jvm") version "1.9.25", but I don't see a corresponding class that can be used to add it. QQ_1730819569407

BingZi-233 commented 2 weeks ago

Looks like I've done this part, and it's a bit weird to write this way. QQ_1730820154796

pascalgrimaud commented 2 weeks ago

I don't think gradle-kotlin should depend on gradle-java

BingZi-233 commented 2 weeks ago

It is as it should be, just as an additional language extension. Does not replace gradle-java