Message-ID: <816076767.925.1419037289147.JavaMail.firstname.lastname@example.org> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_924_376354794.1419037289147" ------=_Part_924_376354794.1419037289147 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html
Developers may want to write Maven plugins in various languages (C#, Rub= y, etc) and have those plugins executed within their native runtime environ= ments. There is no standard way of getting Maven specific information such = as the pom, base directory path or local repository path into these non-Jav= a plugins.=20
NMaven provides .NET support by reading the attributes (annotations) wit= hin the C# class file and creating a Java binding class with matching annot= ations and fields. Maven then injects the appropriate values into the Mojo = written in Java. The NMaven framework knows how to call the .NET plugin as = an external process. This involves saving the pom.xml file, creating anothe= r file containing the custom field information and finally telling the .NET= process the location of the pom.xml and field info file.=20
I don't think the Java binding class is an ideal solution. I would like = to see 1) a specification defining the messages interaction and format that= handles passing of Maven field information to external processes and 2) a = general framework implementing this spec from the Maven (Java) side.