You are viewing a plain text version of this content. The canonical link for it is here.
Posted to jaxme-dev@ws.apache.org by Jochen Wiedmann <jo...@gmail.com> on 2005/08/19 23:15:49 UTC

Making Maven branch the trunk

Hi,

I have merged the changes from the trunk into the MAVEN branch. To make 
this branch the new trunk, we need one final step: Gump must be changed 
to use Maven rather than Ant.

Is anyone able to do the necessary changes? I do not know very much of Gump.

Jochen


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


Re: Making Maven branch the trunk

Posted by "Nacho G. Mac Dowell" <ig...@informa.es>.
Nacho G. Mac Dowell wrote:

>
> I must say, though that there is an outstanding bug when using 
> multiple sourceModifications. See:
>
> http://jira.codehaus.org/browse/MPJAVA-38

I forgot to say that for mavenizing PM either we use java 1.4 + to 
compile or wait until it is fixed... I'll commit PM today.

nacho



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


Re: Making Maven branch the trunk

Posted by Jochen Wiedmann <jo...@gmail.com>.
Nacho G. Mac Dowell wrote:

> In the case of PM, though, this order is not sufficient (even if 
> java:compile is just executed once) because of the dependencies on 
> tamino. If we put tamino as the first source modification and it is 
> there, it will find java 5 classes. If we put tamino the last and use 
> 1.4 for compiling the available tag will find tamino.

No problem, disable the Tamino stuff completely and let me look into it. 
It is there for my convenience only and should not be something that the 
project bothers with.


> Also, maven-xdoc-plugin is now on 1.9.1 which accepts i18n sites. Would 
> it be ok to use this release or are there any restrictions of any sort 
> at apache?

If the plugin version is declared as a dependency within the project 
itself (in other words: If Maven ensures automatically, that the version 
is right), then I should think that there are no problems.


Jochen

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


Re: Making Maven branch the trunk

Posted by "Nacho G. Mac Dowell" <ig...@informa.es>.
Jochen Wiedmann wrote:

> If I do understand the problem right, then a possible workaround for 
> us is simply to ensure a suitable order:
>
>   - Check for com.sun.org.apache.xerces (Sun implementation of Java 5)
>   - Check for Java 5 classes            (Java 5)
>   - Check for Java 1.4 classes          (Java 1.4)
>
> The bug should only catch, if we reverse the order.
>

The bug has other consequences. It is true that using this order would 
solve the problem iff java:compile is only executed once. Actually I 
came across this bug because I was trying to execute jar:install and 
site:generate. I was quite amazed at first, because I tried putting all 
sorts of stupid names as className on the available tag and it kept 
saying that they where available!!!

In the case of PM, though, this order is not sufficient (even if 
java:compile is just executed once) because of the dependencies on 
tamino. If we put tamino as the first source modification and it is 
there, it will find java 5 classes. If we put tamino the last and use 
1.4 for compiling the available tag will find tamino.

So I am not sure which aproach to use. I am pretty sure that other 
apache projects will face similar problems. Actually the reporter of 
this bug is an apache committer (Simon Kitching).

What do you think?

Also, maven-xdoc-plugin is now on 1.9.1 which accepts i18n sites. Would 
it be ok to use this release or are there any restrictions of any sort 
at apache?

>> then it's probably easier to have them as .properties
>
>
> Choose, what seems good for you. I am currently quite happy with the 
> progress and wouldn't want to intervene. Another thing that can be 
> changed later, if it should turn out to be desirable. 

I'm sorry to say (i changed my mind...) I'll choose build goal on 
maven.xml... The reason is that when you are trying to build an 
individual project (ie for testing) it'd be nice to do the same thing as 
on the multiproject build. This way we won't have duplicate multi-goals.


best regards,

nacho

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


Re: Making Maven branch the trunk

Posted by Jochen Wiedmann <jo...@gmail.com>.
Nacho G. Mac Dowell wrote:

> Means that if RegularExpression is NOT found then exclude 
> Java5REHandler.java on the build process. Similarly you could include 
> other files with the includes tag.

Excellent! Exactly what we need. :-)


> I must say, though that there is an outstanding bug when using multiple 
> sourceModifications. See:
> 
> http://jira.codehaus.org/browse/MPJAVA-38

If I do understand the problem right, then a possible workaround for us 
is simply to ensure a suitable order:

   - Check for com.sun.org.apache.xerces (Sun implementation of Java 5)
   - Check for Java 5 classes            (Java 5)
   - Check for Java 1.4 classes          (Java 1.4)

The bug should only catch, if we reverse the order.


> then it's probably easier to have them as .properties

Choose, what seems good for you. I am currently quite happy with the 
progress and wouldn't want to intervene. Another thing that can be 
changed later, if it should turn out to be desirable.


Jochen

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


Re: Making Maven branch the trunk

Posted by "Nacho G. Mac Dowell" <ig...@informa.es>.
Jochen Wiedmann wrote:

> I haven't yet had the time to evaluate how to exclude classes 
> dynamically in Maven


    <build>
        <sourceModifications>
            <sourceModification>
                
<className>com.sun.org.apache.xerces.internal.impl.xpath.regex.RegularExpression</className>
                <excludes>
                    <exclude>**/Java5REHandler.java</exclude>
                </excludes>
            </sourceModification>
        </sourceModifications>
    </build>

Means that if RegularExpression is NOT found then exclude 
Java5REHandler.java on the build process. Similarly you could include 
other files with the includes tag.

I must say, though that there is an outstanding bug when using multiple 
sourceModifications. See:

http://jira.codehaus.org/browse/MPJAVA-38 

>
> I think the most important point is that we should have a set of 
> documented goals in the main project. We developers will typically be 
> able to find the available goals easily. For a user, however, who is 
> just using the svn version or source distribution, it should be 
> possible to find the required steps easily. May be, an XDoc page in 
> the main project would do?

then it's probably easier to have them as .properties

>
>> PD: I'll try to investigate why we need commons-jelly-tags-fmt
>
>
> I'd assume that this is a bug in Maven. We can live with that, if the 
> workaround works.

I'll try to use newer versions of xdoc plugin to see if this was fixed 
(1.0.2 comes with xdoc-1.8 and they are currently on 1.9.1)

best regards,

nacho




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


Re: Making Maven branch the trunk

Posted by Jochen Wiedmann <jo...@gmail.com>.
Nacho G. Mac Dowell wrote:

> I've also added a sourceModifications for Java5REHandler. Probably other 
> source modifications are needed. Currently I only have jsdk 1.4 
> installed so I am not sure. I will install 1.3.2 today and have a look.

The class Java5REHandler should be excluded from the build, unless 
compiling with Java 5 or later. (There are several similar examples 
related to Java 1.4 in the old Ant scripts.) I haven't yet had the time 
to evaluate how to exclude classes dynamically in Maven and was 
(obviously wrong) assuming, that we developers are all using Java 5 
anyways. Sorry!


> Another question. Do we prefer to set the goals of all subprojects in 
> the project.properties or do we want the reactor just to execute goal 
> build which will be defined in common-build/maven.xml?

I think the most important point is that we should have a set of 
documented goals in the main project. We developers will typically be 
able to find the available goals easily. For a user, however, who is 
just using the svn version or source distribution, it should be possible 
to find the required steps easily. May be, an XDoc page in the main 
project would do?


> PD: I'll try to investigate why we need commons-jelly-tags-fmt

I'd assume that this is a bug in Maven. We can live with that, if the 
workaround works.


Jochen

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


Re: Making Maven branch the trunk

Posted by "Nacho G. Mac Dowell" <ig...@informa.es>.
robert burrell donkin wrote:

>i use 1.0.2 but when i run 
>
>"maven multiproject:install"
>
>i get: 
>
>"The build cannot continue because of the following unsatisfied
>dependency:
>
>jaxmexs-0.6-dev.jar (try downloading from
>http://ws.apache.org/jaxme/xs/)"
>
>
>maven:multiproject fails in a similar fashion. is it necessary to build
>each project separately?
>
>
>  
>
Hi all,

I did a fresh install of maven 1.0.2 and a fresh checkout of the MAVEN 
branch and I think I found where the problems are.

First IMHO multiproject plugin won't suit our needs. If we make use of 
the reactor through maven.xml things go smooth. Second, the groupId's 
where wrong. I think there is a bug in eclipse's maven plugin. When you 
are inheriting a pom and you don't specify the groupId it makes a guess 
on it (being the same as the artifactId). So I'd suggest not to inherit 
this element. I think it is the way maven knows about the build order. 
And last, I don't think it is a good idea to have the top-level project 
inheriting the same pom and properties as the other projects. IMO this 
is why it is suggested to have a common-build pom for the subprojects 
and have a top-level project with no sources. With maven-plugins this is 
how it is done. An inmediate benefit for us is that we can specify a 
different maven.docs.src until the user docs of the top-level projects 
are converted.

I've also added a sourceModifications for Java5REHandler. Probably other 
source modifications are needed. Currently I only have jsdk 1.4 
installed so I am not sure. I will install 1.3.2 today and have a look.

Another question. Do we prefer to set the goals of all subprojects in 
the project.properties or do we want the reactor just to execute goal 
build which will be defined in common-build/maven.xml?

regards,

nacho

PD: I'll try to investigate why we need commons-jelly-tags-fmt


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


Re: Making Maven branch the trunk

Posted by Jochen Wiedmann <jo...@gmail.com>.
On 8/21/05, robert burrell donkin <rd...@apache.org> wrote:

> jaxmexs-0.6-dev.jar (try downloading from
> http://ws.apache.org/jaxme/xs/)"

Are you sure, that you are using the latest version? I am aware of one
place, where the dependency was slightly wrong, but that should have
been fixed.

Which is the failing project?


Jochen


-- 
What are the first steps on the moon, compared to your child's?

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


Re: Making Maven branch the trunk

Posted by robert burrell donkin <rd...@apache.org>.
On Sun, 2005-08-21 at 12:41 +0200, Jochen Wiedmann wrote:
> robert burrell donkin wrote:
> 
> > i'm still a little unsure about the plan. AIUI we have a mavenised build
> > on the MAVEN branch which has the changes made to trunk ported into it.
> > so it's currently the same as trunk but uses maven. is this right?
> 
> Exactly.
> 
> > what's stopping copying MAVEN into trunk ATM?
> 
> I see no problem in using the MAVEN branch for some days, until it is 
> ready for Gump. I remember that we broke the Gump builds of about 
> hundred projects, because one important project (don't remember exactly 
> which, maybe dom4j or something similar) depends on us and a real lot of 
> projects depended on that. We should really try to avoid the situation.

ok

> To me, the important part is that we are able to work on a common 
> branch, because that minimizes the work, which is spent for merging. As 
> Nacho has reached so far, we are able to do that now.

cool

> > is the plan to alter the gump meta-data so that it uses the MAVEN branch
> > first and then change it to use trunk later?
> 
> I'd suggest to create a new meta data descriptor in Gump, which uses the 
> MAVEN branch. No other projects depend on it, so one can work on it 
> without ruffle. As soon as the new meta data descriptor builds 
> successfully, we can replace the old meta data descriptor with the new 
> one and make the MAVEN branch the trunk.

that sounds like a good plan

> > i should have said: it'll be a few days once i have the mavenised build
> > running reliably on my machine :-/
> 
> No problems here. As for the "running reliably": My impression is, that 
> Nacho uses another Maven version than we do (1.0.2). I've had a hard 
> time yesterday to get it all working, but it seems to be working fine 
> now for me.

i use 1.0.2 but when i run 

"maven multiproject:install"

i get: 

"The build cannot continue because of the following unsatisfied
dependency:

jaxmexs-0.6-dev.jar (try downloading from
http://ws.apache.org/jaxme/xs/)"


maven:multiproject fails in a similar fashion. is it necessary to build
each project separately?

- robert

Re: Making Maven branch the trunk

Posted by Jochen Wiedmann <jo...@gmail.com>.
robert burrell donkin wrote:

> i'm still a little unsure about the plan. AIUI we have a mavenised build
> on the MAVEN branch which has the changes made to trunk ported into it.
> so it's currently the same as trunk but uses maven. is this right?

Exactly.

> what's stopping copying MAVEN into trunk ATM?

I see no problem in using the MAVEN branch for some days, until it is 
ready for Gump. I remember that we broke the Gump builds of about 
hundred projects, because one important project (don't remember exactly 
which, maybe dom4j or something similar) depends on us and a real lot of 
projects depended on that. We should really try to avoid the situation.

To me, the important part is that we are able to work on a common 
branch, because that minimizes the work, which is spent for merging. As 
Nacho has reached so far, we are able to do that now.


> is the plan to alter the gump meta-data so that it uses the MAVEN branch
> first and then change it to use trunk later?

I'd suggest to create a new meta data descriptor in Gump, which uses the 
MAVEN branch. No other projects depend on it, so one can work on it 
without ruffle. As soon as the new meta data descriptor builds 
successfully, we can replace the old meta data descriptor with the new 
one and make the MAVEN branch the trunk.


> i should have said: it'll be a few days once i have the mavenised build
> running reliably on my machine :-/

No problems here. As for the "running reliably": My impression is, that 
Nacho uses another Maven version than we do (1.0.2). I've had a hard 
time yesterday to get it all working, but it seems to be working fine 
now for me.


Jochen

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


Re: Making Maven branch the trunk

Posted by robert burrell donkin <rd...@apache.org>.
On Sat, 2005-08-20 at 17:05 +0200, Jochen Wiedmann wrote:
> robert burrell donkin wrote:
> 
> > i'm willing to take a look at this but it might take a day or two. is
> > there any reason why we couldn't use maven generated ant build scripts
> > for gump till then?
> 
> Basically, that's a good idea. On the other hand, one should keep in 
> mind, that we now have one multiproject and several subprojects, that 
> would need to recreate Ant scripts, whenever the Maven configuration 
> changes. I'd prefer to avoid that additional maintenance step.

the ant scripts may turn out to be a convenient way to manage the
transition.
 
i'm still a little unsure about the plan. AIUI we have a mavenised build
on the MAVEN branch which has the changes made to trunk ported into it.
so it's currently the same as trunk but uses maven. is this right?

what's stopping copying MAVEN into trunk ATM?

is the plan to alter the gump meta-data so that it uses the MAVEN branch
first and then change it to use trunk later?

it won't take very long to modify the gump meta-data but (experience has
proved) that it may take many days of fixing before gump will work
correctly. in other words, i think it unlikely that it'll be possible to
make transition without breaking gump. so, i'm not sure there's much to
gained by waiting.

> In other words, waiting "a day or two" sounds *much* better. :-)

i should have said: it'll be a few days once i have the mavenised build
running reliably on my machine :-/

i'm still having problems making the maven build run. this is a little
bit of a bad sign since AIUI gump uses a reasonably standard maven.

- robert

Re: Making Maven branch the trunk

Posted by Jochen Wiedmann <jo...@gmail.com>.
robert burrell donkin wrote:

> i'm willing to take a look at this but it might take a day or two. is
> there any reason why we couldn't use maven generated ant build scripts
> for gump till then?

Basically, that's a good idea. On the other hand, one should keep in 
mind, that we now have one multiproject and several subprojects, that 
would need to recreate Ant scripts, whenever the Maven configuration 
changes. I'd prefer to avoid that additional maintenance step.

In other words, waiting "a day or two" sounds *much* better. :-)

Jochen


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


Re: Making Maven branch the trunk

Posted by robert burrell donkin <rd...@apache.org>.
On Fri, 2005-08-19 at 23:15 +0200, Jochen Wiedmann wrote:
> Hi,
> 
> I have merged the changes from the trunk into the MAVEN branch. To make 
> this branch the new trunk, we need one final step: Gump must be changed 
> to use Maven rather than Ant.
> 
> Is anyone able to do the necessary changes? I do not know very much of Gump.

i'm willing to take a look at this but it might take a day or two. is
there any reason why we couldn't use maven generated ant build scripts
for gump till then?

- robert