Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: None
-
Labels:None
-
Number of attachments :
Description
When calling ant against a build file, it does not have the maven context properties inherited. This prevents a lot of useful reasons for calling existing ant files, especially when it comes to Torque.
I've patched the problem, going back to grant, through jelly, and into maven. grant was missing a getProperties method, which I put in, along with a DefaultPropsHandler that closely mimics ant's own process (I copied each method for ant's Project into the DefaultPropsHandler and modified it as little as possible).
Once the grant patch gets in to grant-1.0-beta-3/beta-4-dev (I don't know if grant officially released beta-3 or not...it project.xml just says beta-3), I can get a patch into jelly which has it use the GrantProject along with a JellyPropsHandler that extends DefaultPropsHandler, over riding the setProperty/getProperty/getProperites to integrate the jelly context. This allows jelly to successfully execute ant build files via <ant.../> tags and have the context properties imported by ant into the new ant project.
Also in jelly, I cleaned up how ant projects are passed around. Instead of the tag library being created with a given ant project in mind, tags are project-agnostic until execution, at which point they can get the project from the context. It's makes for a much cleaner, decoupled architecture, especially when maven comes into the picture.
Once this gets into jelly-1.0-beta3/beta-4-dev, I've got a patch for maven that gets ride of GrantPropsHandler, cleans up the AntTagLibrary/jelly integration, and just relies on the jelly/ant functionality.
I've had the patch for grant into Bob McWhirter for awhile. It's a fairly simple patch, I think, given that it just patches in the missing getProperties and has nearly cut/paste functionality from ant's Project.
If Bob doesn't have time, I'd be glad to commit it to commons-grant, given the karma and the okay by a maven/jelly/grant committer.
I'd really like this functionality to be in b7. I had it ready before b6, save some rearchitecturing I've done since then, but the ball just isn't moving forward.
I've got some major changes to the Torque test suite I'd like to get committed that will allow our run time tests to test more than just one given property configuration per committer, which I feel is leaving a lot of options out of tests, hence a lot of complaints from users.
I've also got apprx. 5-10 patches on torque-dev to go through that I'd like to have unit tests for to assure they're bugs and that they stay fix, but the current runtime test suite makes it difficult to do.
If I could expediate this process in anyway, please let me know. I'm more than willing to help.
Activity
| Field | Original Value | New Value |
|---|---|---|
| Attachment | maven-ant.txt |
| Resolution | Fixed | |
| Status | Assigned | Closed |
| Component/s | jelly-integ [ 10027 ] | |
| Key | MAVEN-97 |
|
| Affects Version/s | 1.0-beta-7 [ 10060 ] | |
| Project | maven [ 10030 ] | maven-ant-plugin [ 10316 ] |
I've been successfully calling ant build files from Maven with this patch. The functionality has been in Jelly for awhile, this just removes the cruft from Maven and moves the responsibility to Jelly.