2022-12-18 17:04:51 +00:00
|
|
|
## Gradle Scripts
|
|
|
|
|
2023-05-20 14:23:36 +00:00
|
|
|
This directory contains helper scripts and Java module generation rules for dependencies used by various XPipe gradle projects.
|
2022-12-18 17:04:51 +00:00
|
|
|
It also contains various other types of shared build script components that are useful.
|
|
|
|
|
|
|
|
As the [jlink](https://docs.oracle.com/en/java/javase/17/docs/specs/man/jlink.html) tool
|
|
|
|
effectively requires proper modules as inputs but many established java
|
|
|
|
libraries did not add proper support yet, using an approach like this is required.
|
2024-02-28 07:36:31 +00:00
|
|
|
The modules are generated with the help of [extra-java-module-info](https://github.com/gradlex-org/extra-java-module-info).
|
2022-12-18 17:04:51 +00:00
|
|
|
The generated `module-info.java` file contains the necessary declarations to make a library work.
|
|
|
|
While gradle already has a [similar system](https://docs.gradle.org/current/userguide/platforms.html)
|
|
|
|
to better share dependencies, this system is lacking several features.
|
|
|
|
For one, it can't pass any other customizations to the build that are required by the dependencies,
|
|
|
|
e.g. compiler parameters or annotation processors.
|