New build file - using Gant!

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Shiny new stuff here, in a dusty old dead-end branch since I'm still set up for pre-rename structure:

https://github.com/Nanoware/Blockmania/ ... d45b3cccbd

Took a while to figure out Gant and then get used to it, and just like Groovy vs. Java it dawns on you "Hey, I know this stuff already, it is just like Ant, just far less awkward!"

Much cleaner now, and not quite done yet. Still need to tidy up the lib jar extraction / duplicate files in the final jar file that causes problems with signing the jar for applet usage.

One nitpick remains: My IntelliJ isn't quite getting along with the Gant config due to Groovy also being present in our source tree. I had to add my main Groovy install's primary jar file as an external lib reference to allow IntelliJ to run Gant, but then if I try to compile it fails due to ambiguous references or something. Works perfectly well from the command line.

1 am now tho, sleepy!
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
FYI - I'm working on re-integrating the groovy branch including applet and Gant setup to the MovingBlocks org. IntelliJ keeps insisting on regenerating Ant junk I don't want, but I haven't yet found the magic bullet to make Gant work natively within IntelliJ. Going to try to work that out before moving on with the integrate.
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Changed my mind and left the Ant in for now to make IntelliJ happy. Will make a task to figure out how to make IntelliJ and Gant get along later that maybe a contributor can help with :)

Code is merged, although in a separate branch under MovingBlocks here: https://github.com/MovingBlocks/Terasol ... yintegrate - I'm hitting a Git warning about not being able to fast-foward to develop without risking history, despite being up to date. Maybe some sequence issue. I was able to do a fast-forward pull just fine to a local MovingBlocks/develop branch from the MovingBlocks/groovyintegrate so hey ;)

Worst case the groovyintegrate branch has everything so can always rebranch develop from there. Not a big deal, that part is just paperwork at this point - important part is that it works :D And now our fork queue is vastly smaller as all the revisions from Nanoware/groovyblocks have gotten across properly to the new branch.

The screwy issue that stalled me for about 24 hours turned out to not relate to Gant, or even Ant, as it was active in both. Confused the heck out of me - my source groovy branch worked fine, integrate to new wouldn't as all the Groovy block files compiled to the root of the war file. I had ignored my outdated copies of the block files and for ages missed that tho I moved the new files back into the codebase, they didn't have a package declaration...

One quirk - the IntelliJ project file may be swapping from "logs" to "LOGS" and back on ignored dirs - wonder if that's an OS capitalization issue? We could add both if they both appear (I get "LOGS")
 

rapodaca

New Member
Contributor
Using Eclipse, how can I import this project?

Also, what was it about Ant that didn't work? I know it's awkward to use, but everyone knows it.
 

Cervator

Org Co-Founder & Project Lead
Contributor
Design
Logistics
SpecOps
Thanks! We'll have to incorporate that on the DevSetup wiki page for those wanting to use Eclipse rather than IntelliJ :)

Ant - is just too dang pointy. Gant is nice and easy to write, and you can use the exact same Ant targets after you get used to writing them in an easier format :)

But the real power, which we haven't taken much advantage of yet, is being able to just flow straight into outright Groovy commands - in Ant I know I'll eventually run into somewhere where I need to write up a script block in Java or what not.

So really we get the best of both worlds - with minimal time spent getting the "ah-hah!" on the syntax needed to use the power and familiarity of Java (without having to wrap it in anything) plus the power of Groovy and Java without having to do anything special :geek:
 
Top