commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gilles <gil...@harfang.homelinux.org>
Subject Re: [Math] Compile only top-level package and below
Date Fri, 04 Sep 2015 14:42:58 GMT
Hi.

On Fri, 4 Sep 2015 15:30:57 +0100, sebb wrote:
> On 4 September 2015 at 14:08, Gilles <gilles@harfang.homelinux.org> 
> wrote:
>> Hello.
>>
>> There are two branches for Commons Math.
>>
>> For one, the top-level Java package is
>>   org.apache.commons.math4
>> For the other, it is
>>   org.apache.commons.math3
>>
>> Unless I'm mistaken, this should imply that maven tries to compile
>> only files under either
>>   src/main/java/org/apache/commons/math4
>>   src/test/java/org/apache/commons/math4
>> or
>>   src/main/java/org/apache/commons/math3
>>   src/test/java/org/apache/commons/math3
>
> No, Maven compiles everything under src/[main|test]/java by default.
>
> You could change that to
>
> src/main/java/org/apache/commons/math4
>
> but then the compiler would complain about mismatched package names
>
>> But it happens that I have currently files in "math3" not currently
>> checked in into git: those are new files which git does not remove
>> when switching branches.
>
> That's the problem - spurious files in the workspace.
>
>> Then when starting a compilation in "master" (where the top-level
>> is "math4"), lots of compilation errors occur.
>>
>> The "source" top-level directories do not seem to be specified
>> in the project's POM.
>
> No, because Maven defaults to the standard directory layout.
>
>> Can the parent be changed in order to produce the desired behaviour?
>
> Well, you might be able to exclude all files under math3/math4 but it
> will be tricky to do and non-standard.

But it is standard: source files must belong to the "top-level" package
of the project.

We don't change the top of the package hierarchy, just filter out the
files that do not belong to the project (as per the policy).

>
>> Or is there a workaround?
>
> Remove the spurious files ...

They are not "spurious".
They just happen to end with ".java".

>> Is there a better way to handle the situation (short of manually
>> moving the source files back and forth)?
>
> Why not use two checkouts and switch between them instead of 
> switching
> the contents of a single checkout?

I might have to resort to that.
But it does not look nice (IOW why having branches if not to switch 
between
them?).


Thanks,
Gilles


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@commons.apache.org
For additional commands, e-mail: dev-help@commons.apache.org


Mime
View raw message