I have now spent half an hour to move around files in a branch to show how
the directory structure and a full multi-project build would like.

It's at https://github.com/centic9/poi/tree/gradle_build

Each sub-module has it's own build.gradle, with the main build.gradle
providing shared definitions.

compiling, jars and running tests works now. Things like JavaDoc and Source
packages should be easy to add from here.

The Ant-build is likely broken now, but could still made runnable by simply
adjusting all the source locations

Based on this we could try to move more and more stuff from the Ant build
into Gradle, e.g. rat-check, forbidden-apis, building release artifacts, ...

Dominik.

On Wed, Mar 24, 2021 at 5:36 PM Dominik Stadler <[email protected]>
wrote:

> Hi,
>
> I am the one guilty of adding the original build.gradle which is basically
> still an ugly hack via custom source folders and other stuff.
>
> The intention was to over time get rid of both the build.xml and
> Sonar-Maven build to reduce maintenance overhead.
>
> Depdendency-handling is so much more simple in Gradle compared to our
> home-grown things in the build.xml. Furthermore Ant is showing it's age,
> which to me manifests e.g. in the slow and bumpy support for JUnit 5.
>
> Also the support for Gradle in IDEA is usually very good, not sure about
> the current state on Eclipse, though.
>
> I am in favour of Gradle personally as I am not too familiar with Maven
> and struggled a lot with it at times as well. I agree that Gradle is also
> acting in strange ways sometimes, sometimes more than Ant, but it does many
> many things out of the box if you stick to the default setup, which in my
> opinion is a big plus.
>
> I would also be interesting in contributing to a branch on github where we
> modify the structure to a clean Gradle-based build including moving source
> folders into place for a proper multi-project build
>
> This would show how it will look like in the end and we can then
> experiment with adding some of the more advanced things that we currently
> do in the build.xml.
>
> Dominik.
>
> On Tue, Mar 23, 2021 at 10:00 PM Marius Volkhart <[email protected]>
> wrote:
>
>> Hi Andi,
>>
>> I'm quite familiar with Gradle and am happy to be involved. I think I have
>> a decent understanding of the POI Gradle build as it stands and can
>> certainly try answering any questions!
>>
>> I have no opinion about Maven vs Gradle. I know my way around Gradle
>> better, and am familiar with JPMS modularizing a project with it.
>>
>> --
>> Cheers,
>> Marius Volkhart
>>
>>
>>
>> On Tue, Mar 23, 2021 at 9:30 PM Andreas Beeker <[email protected]>
>> wrote:
>>
>> > Hi Devs,
>> >
>> > since a few days / every now and then I try to get into our gradle
>> build,
>> > but I have some problems, because I somehow try to start big (with the
>> > current gradle build) instead of building up from small example
>> projects.
>> >
>> > As a few of you prefer gradle to the current ant build [2], I would be
>> > willing to convert it, but I struggle with understanding the warnings
>> > IntelliJ throws me at and also the way multi-module build / DSL usually
>> > look like.
>> >
>> > So I'd wished to have two things:
>> >
>> > * maybe someone of you has time to go through the current gradle build
>> and
>> > explain me a few things.
>> >
>> > * modifying the project structure to something more modular, e.g. to
>> have
>> > a separate sub-tree for the main jar and the others modules.
>> >
>> > I'm not sure if this makes sense in the current project phase, but in
>> case
>> > you would argue, that the patches wouldn't match anymore ... with the
>> JPMS
>> > reorganization we already have that situation.
>> >
>> > So if there's anyone brave enough [1] drop me a note.
>> >
>> > Btw. if you would decide that a maven only build (opposed to the lite
>> > version now in place)  is also an improvement, I'm happy and capable of
>> > doing that ... but the project structure should be change then too.
>> >
>> > Andi
>> >
>> >
>> > [1] https://practical-tech.com/1983/01/01/real-men-dont-use-pascal/
>> >
>> > [2]
>> http://apache-poi.1045710.n5.nabble.com/Switch-to-maven-tp5722213.html
>> >
>> >
>> > ---------------------------------------------------------------------
>> > To unsubscribe, e-mail: [email protected]
>> > For additional commands, e-mail: [email protected]
>> >
>> >
>>
>

Reply via email to