Adam Heath wrote:
> Adrian Crum wrote:
>> Right now the test classes are included in each component's jar file. It 
>> seems to me it might save on memory or the target server's disk space if the 
>> test classes were left out of the component's final jar file.
>>
>> Maybe have a folder structure something like:
>>
>> component
>>   src
>>     main
>>       org
>>         ofbiz
>>           etc...
>>     test
>>       org
>>         ofbiz
>>           etc...
>>
>> The main branch is for the deployment jar and the test branch is only for 
>> test classes. The end result would be you could have a separate build for 
>> the test classes that wouldn't put them in the final jar. Another advantage 
>> is the test classes can be in the same package as the classes they test. 
>> (The current setup is a pain in that respect.)
> 
> There is no reason to move the source for the tests.  If fact, that is
> actually a bad thing to do.
> 
> Just use an appropriate pattern to put them into a separate jar.
> However, then the startup code needs to handle loading the correct
> jars.  I've thought about this myself.

This is complicated if any classes in foo-test.jar are registered in
META-INF/services, while normal classes are also so registered.

Also, if a test class is registed as some normal interface, the name
of the file in META-INF/services will not match the *.test.* pattern.

If we want to keep a single src directory(which is what I prefer),
then src/META-INF/services has to go.  In its place, <jar>'s nested
<service> element will have to be used.

Reply via email to