diffplug / diffplug/selfie

Add JPMS module-info.java

Open
#125 0 comments 0 reactions 0 assignees View on GitHub
enhancement jvm
Dominant language
Kotlin
Stars
101
Forks
18
PR merge metrics
No merged PRs in 30d

Description

I'm not sure that anyone will ever need this. But I mistakenly thought that we did to reproduce a user bug, so I started experimenting in the `feat/module-info` branch ([see diff](https://github.com/diffplug/selfie/compare/main...feat/module-info)).

The hiccups I ran into were:

- the `module-info.java` has to be in a `java` folder, not a `kotlin` folder
- stuff that is in the `java` folder can't reference stuff in the `kotlin` folder
- we needed fake package-private `NeededForModuleInfo.java` files in the java folder to avoid compilation errors in the `module-info.java`

If you need selfie to support `module-info.java`, I'm happy to merge a PR that does it, and you can use this as a starting point.

- the hiccups above are fine with me. If you can fix the workarounds great, but I don't mind shipping them
- please merge in from main first, maybe the latest version of the Kotlin plugin will have made it easier by then
- I would like the metadata (naming and whatsuch) to be canonical, and I don't have enough experience with JPMS to know what it should be. Hopefully if you need JPMS, you've also got enough experience that you can set this metadata better than I did.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.