69 messages in org.codehaus.groovy.devRe: [groovy-dev] Building Groovy
FromSent OnAttachments
Russel WinderOct 6, 2008 4:36 am 
MingfaiOct 6, 2008 4:47 am 
Hans DockterOct 6, 2008 4:50 am 
Hans DockterOct 6, 2008 4:55 am 
Jochen TheodorouOct 6, 2008 4:56 am 
Guillaume LaforgeOct 6, 2008 7:17 am 
Hans DockterOct 6, 2008 7:51 am 
Russel WinderOct 6, 2008 7:59 am 
Guillaume LaforgeOct 6, 2008 8:19 am 
Guillaume LaforgeOct 6, 2008 8:25 am 
MingfaiOct 6, 2008 8:28 am 
Guillaume LaforgeOct 6, 2008 8:36 am 
Hans DockterOct 6, 2008 1:46 pm 
Guillaume LaforgeOct 6, 2008 1:54 pm 
Hans DockterOct 6, 2008 1:54 pm 
Jochen TheodorouOct 6, 2008 2:03 pm 
Guillaume LaforgeOct 6, 2008 2:09 pm 
Paul DuffyOct 6, 2008 7:06 pm 
Luke DaleyOct 6, 2008 8:47 pm 
Guillaume LaforgeOct 6, 2008 9:44 pm 
Russel WinderOct 6, 2008 11:25 pm 
Russel WinderOct 6, 2008 11:54 pm 
Russel WinderOct 7, 2008 12:03 am 
Jason DillonOct 7, 2008 12:23 am 
Russel WinderOct 7, 2008 12:24 am 
Guillaume LaforgeOct 7, 2008 12:30 am 
Hans DockterOct 7, 2008 12:35 am 
Jason DillonOct 7, 2008 12:35 am 
Hans DockterOct 7, 2008 12:36 am 
Jason DillonOct 7, 2008 12:41 am 
Guillaume LaforgeOct 7, 2008 12:54 am 
Jason DillonOct 7, 2008 1:40 am 
Guillaume LaforgeOct 7, 2008 1:50 am 
Jason DillonOct 7, 2008 1:55 am 
Guillaume LaforgeOct 7, 2008 2:25 am 
Guillaume LaforgeOct 7, 2008 2:35 am 
Jason DillonOct 7, 2008 3:09 am 
Guillaume LaforgeOct 7, 2008 3:12 am 
Russel WinderOct 7, 2008 3:17 am 
Jason DillonOct 7, 2008 3:24 am 
Paul KingOct 7, 2008 4:04 am 
ma...@dockter.bizOct 7, 2008 4:19 am 
ma...@dockter.bizOct 7, 2008 4:25 am 
Jason DillonOct 7, 2008 4:36 am 
Jason DillonOct 7, 2008 4:39 am 
Jochen TheodorouOct 7, 2008 5:20 am 
Jason DillonOct 7, 2008 8:19 am 
Jochen TheodorouOct 7, 2008 9:51 am 
Jason DillonOct 7, 2008 10:49 am 
Jochen TheodorouOct 7, 2008 12:03 pm 
Hans DockterOct 7, 2008 2:34 pm 
Luke DaleyOct 7, 2008 3:52 pm 
Jason DillonOct 8, 2008 1:28 am 
Jason DillonOct 8, 2008 1:35 am 
Hans DockterOct 8, 2008 3:11 am 
Hans DockterOct 8, 2008 3:49 am 
Hans DockterOct 8, 2008 4:30 am 
Hans DockterOct 8, 2008 4:40 am 
Jason DillonOct 8, 2008 4:52 am 
Jason DillonOct 8, 2008 5:21 am 
Jochen TheodorouOct 8, 2008 6:23 am 
Jochen TheodorouOct 8, 2008 6:47 am 
Jochen TheodorouOct 8, 2008 6:59 am 
Hans DockterOct 8, 2008 8:33 am 
Hans DockterOct 8, 2008 8:43 am 
Paul DuffyOct 9, 2008 8:58 am 
Paul KingOct 9, 2008 1:15 pm 
Danno FerrinOct 9, 2008 1:27 pm 
Paul KingOct 10, 2008 2:31 am 
Actions with this message:
Paste this link in email or IM:
Paste this link in email or IM:
Atom feed for this thread
Paste this URL into your reader:
Subject:Re: [groovy-dev] Building GroovyActions...
From:Jochen Theodorou (blac@gmx.org)
Date:Oct 8, 2008 6:23:38 am
List:org.codehaus.groovy.dev

Jason Dillon schrieb:

On Oct 8, 2008, at 2:04 AM, Jochen Theodorou wrote:

[...]

Well, that is not good enough for me anyway. It sounds like a two phase operation, where I have to do both phases. That is something lacking automatisation if it is like that.

How exactly did you determine this to be a two phase operation? If you have a project like:

pom.xml my-maven-plugin/pom.xml my-module/pom.xml

And "my-module" uses "my-maven-plugin", then when running mvn with the top-level pom.xml will build "my-maven-plugin" first, then "my-module" and the later will use the former during the build.

well... can you make an example project? Something very simple showing that? I am sure that would be intersting not only to me.

[...]

again, that is groovy embedded in XML. That is still a media breach. Also, if most of your build consists of groovy, then why is it xml based at all?

Interesting, so what type of thing you are building should determine the type of system used to build? Based on that, groovy-core should use a Java-based system, since its got more .java files than .groovy or .xml files ;-)

You are making a small mistake here. Groovy is not intended to replace Java, it is part of the toolbox. Groovy is especially designed to work well together with Java. Now using anything to script m2 is quite different, because m2 is not especially designed to be scripted. I even think that doing so would be against the maven philosophy of not having build logic in the build configuration file.Of course you can write plugins in Groovy and use them like you use java plugins, but that misses the point, because this talk is more or less about having a build configuration or a build program.

Sure, I agree... then why are you going on and on about media breaching? That seems just as irrelevant and meaningless, which was my point.

"then why"? not sure what you mean with that. Ah, ok, now I see... I did not read the text as I should have.... I did read a build system writen in Java, not a build system driven by java.If I see m2 a build system driven by Java, thenI still do not have a bild file, that contains my Java. Instead I define plugins in Java, need to compile them, probably have that as physical files or jar and need to copy that somewhere, to then use it from my pom. The controling part here is the pom then, meaning it is still a XML driven build system. And I can not define plugins in XML. If I did read right and you need to deploy a plguin by either using an maven itself or copying a file then I am not sure if the plugin will become visible at runtime. Also it seeems as if you really need to generate a file... or write a plugin that allows a plugin to be defined programaticaly... unless m2 tries to protect itselfor the user from doing things like that. This is something that goes much too deep inside to be found in the docs for m2 it seems... Only that it shouldn't... Anyway, even if you use a script in the XML, you still have the breach, since you change from using XML to a genral purpose language.

[...]

Have you ever tried to something tricky inside of Ant?

like what? Adding a fork mode to the groovyc ant task? Like defining a task at runtime?

I have, and its got a whole lot of goo in there which for something tricky one has to wade through, even fight sometimes, to achieve the goal. I don't see that as any different than any other tool.

well.. I doubt you would find that for example in make ;) Even with autotools you usually do not extend the tool itself, like you do with ant or maven. the only tools where you actually extend the tool itself are probably Rake and Scons... at lastI think you could do that there... The important part is that you need to do that in ant and maven to get something done, that is not covered by plugins yet. In make you write a helper program for that. Ruseel surely can tell how you would do that for Scons and probably Rake too.

[...]

And speaking of which... you gonna have time to help me get GMaven using the groovyc internals one day... cause I have zero clue how to make that happen and not break anything (which I did before with my last attempt).

well, you have to tell me exactly what you need, then I can think of a way. For example it seems that if the stubs are not deleted after groovyc has run and leave that to some tool outside, then it would fit Gmaven much better already. I guess the stubs would also need to contain the javadoc and... other things? I am sure I can add some flags to the compiler to get this done... Theoretically I could even hold the compilerin a certain phase and let it run from that point later... of course only given, that the reference to the compiler can be kept... because I would prefer to not to persist the compiler state atm. there must be bigger use before I go down that route

[...]

No, configuration was in project.xml and build logic was in maven.xml, I don't really consider that mixed at all.

hehe, yes, I remember..the project.xml contained nearly nothing and the maven.xml was a monster. In the end the project.xml did not do much and the file you always change is the maven.xml. Also if ant is configuration too and most of the action you would do in ant happens in the maven.xml, then why is the maven.xml no configuration?

And changing maven.xml adding a ton of stuff usually ended up making builds incomprehensible and difficult to maintain. This was one lesson learned from the M1 experience and why you won't find the beast in M2.

but that does not mean it is more easy now. Instead of the maven.xml I have now pluginsI would write, or not?

bye blackdrag