Martin Desruisseaux created SIS-582:
---------------------------------------
Summary: Migrate build system from Maven to Gradle
Key: SIS-582
URL: https://issues.apache.org/jira/browse/SIS-582
Project: Spatial Information Systems
Issue Type: Task
Components: Build process
Affects Versions: 1.3
Reporter: Martin Desruisseaux
Assignee: Martin Desruisseaux
Fix For: 1.4
Replace Maven by Gradle for building Apache SIS. Maven is a blocker issue for
Jigsaw modularisation (JPMS). There is at least two problems that we have been
unable to resolve with Maven when {{module-info.java}} files are present:
* The reuse of test classes defined in other modules (`test-jar` dependency
type).
* JavaFX's Maven dependency, because it is different JAR files depending on the
platform (Linux, Windows) and those JARs are hidden behind a proxy JAR. It
makes difficult for JPMS to see the {{module-info}} of JavaFX.
For JavaFX, we will abandon the use of Maven dependency and requires that the
user has a local installation, which avoid the proxy problem. This is
preferable anyway for licensing reasons.
For the {{test-jar}} problem, we can resolve it by compiling all modules in a
single call to {{javac}} after the source code have been organized in the way
expected by Jigsaw. This is preferable anyway for making easier to generate
aggregated Javadoc and for features such as project-wide annotation processing.
We can not do that with Maven, but Gradle provides more flexibility. Currently
it seems impossible to build a modularized Apache SIS project with Maven.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)