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] Maven profile for running the examples?
Date Tue, 06 Jan 2015 18:28:56 GMT
On Tue, 06 Jan 2015 17:49:35 +0100, Thomas Neidhart wrote:
> On 01/06/2015 12:58 PM, Gilles wrote:
>> On Tue, 06 Jan 2015 08:51:32 +0100, Thomas Neidhart wrote:
>>> On 01/05/2015 11:58 PM, Gilles wrote:
>>>> On Mon, 5 Jan 2015 23:48:43 +0100, Bernd Eckenfels wrote:
>>>>> Am Mon, 05 Jan 2015 23:35:49 +0100
>>>>> schrieb Gilles <gilles@harfang.homelinux.org>:
>>>>>
>>>>>> Which docs?
>>>>>> I didn't intend to move the "userguide" document; only the Java
>>>>>> examples currently under "src/userguide/java" would be moved to
>>>>>>    "src/main"
>>>>>
>>>>> I wont mention multiple modules (also this might be a case where 
>>>>> it
>>>>> makes sense, especially if you want to create a dedicated example 
>>>>> jar
>>>>> file with its own set of dependencies and as it might avoid 
>>>>> calling
>>>>> ant scripts for it), but I would keep the source separated and 
>>>>> rather
>>>>> add an additional source directory (with the buildhelper).
>>>>>
>>>>> <plugin>
>>>>>     <groupId>org.codehaus.mojo</groupId>
>>>>>     <artifactId>build-helper-maven-plugin</artifactId>
>>>>>     <executions>
>>>>>         <execution>
>>>>>             <phase>initialize</phase>
>>>>>             <goals><goal>add-source</goal></goals>
>>>>>             <configuration>
>>>>>                 <sources>
>>>>>                     <source>src/userguide/java</source>
>>>>>                 </sources>
>>>>>             </configuration>
>>>>>         </execution>
>>>>>     </executions>
>>>>> </plugin>
>>>>>
>>>>> NB: this will produce classes on target/classes so you need to 
>>>>> exclude
>>>>> them in the JAR.
>>>>>
>>>>
>>>> Thanks.
>>>> I find it cleaner to keep the examples separated from the "main" 
>>>> code;
>>>> so if this does the trick, I'd prefer it that way.
>>>> We'd nevertheless need that separate JAR that contains the 
>>>> examples,
>>>> and a mean to select which of the examples must be run, as 
>>>> proposed
>>>> by Sebb.
>>>
>>> The examples can not be added to the main code as there is an 
>>> additional
>>> dependency (xchart) that we do not want to add to commons-math in
>>> general.
>>
>> It was never intended to ship the examples as part of the CM
>> library. [There are provisions in the "pom.xml" to prevent it 
>> (IIUC).]
>> IIUC, Sebb proposed that the source code be moved solely for
>> the purpose that maven would compile it with the default config.
>
> I was not talking about packaging.
>
>> IIUC, with Bernd's proposal, this move is thus not necessary.
>
> Neither will work, unless you add the relevant dependencies to the 
> main
> pom.xml which we certainly do not want.
>
> I just wanted to point this out before anybody is doing a change.

As long as the CM library have no dependencies, is it a problem
that non-packaged (or separately packaged) code does have dependencies?

Or is it that it will be more complicated to ensure that there is no
such dependencies for CM itself once the "pom" file refers to them?

Or is it that really the "pom" file is not allowed to contain such
references?

> The best option would certainly be a multi-module project, with the
> examples / userguide a separate module, but this would require some
> changes and a few months ago when we started doing this there was no
> consensus about it.
>
>> The original issue was: How do we run the examples?
>> Phil proposed an "ant" script, which I would have happily produced.
>> But then if "maven" can do it (with the suggested changes to the
>> "pom.xml"), it's IMO simpler to not have to run a different program.
>
> Right now, you can only run them directly in eclipse by adding a 
> project
> for them, but we could easily do the same as NET does.

The original request is: How do we run the examples?
To be more specific: how to run a specific example from the command 
line?

I'm perfectly fine with only modifying the "pom.xml" located in
   src/userguide

Would that work?
Do you readily know what needs to be added?


Gilles


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


Mime
View raw message