J
jeff
We have a library written in Java that we need to port to .NET (and
we need to maintain both versions of the library). I've done some
preliminary research on approaches to this but none of them are
satisfactory. Here's what I've found so far:
- byte code conversion: converts Java classes to .NET assemblies.
Looked at ikvm which is open source, doesn't look mature enough.
Also requires runtime support which is a negative for us due to the
extra overhead.
- bridge technology: uses some kind of proxy generator and provides a
communications channel between the Java app and the .NET app. Looked
at JNBridge, a commercial solution. This won't work for us because
part of our library requires high performance and we don't want the
overhead of crossing contexts and marshalling data.
- language conversion: convert Java to C#. Looked at Microsoft's
Java Language Conversion Assistant (beta version 3). This is a one
way conversion and requires lots of hand tweaking, so there's the
price of performing an initial port, plus the extra cost of
maintaining two versions. Artinsoft provides a way of customizing
the JCLA conversion process (which in theory could reduce the amount
of code that needs to be manually edited) but they seem to be aiming
this at one time conversions (they charge based on lines of code).
Are there any other approaches or solutions out there?
Thanks...
-- jeff
we need to maintain both versions of the library). I've done some
preliminary research on approaches to this but none of them are
satisfactory. Here's what I've found so far:
- byte code conversion: converts Java classes to .NET assemblies.
Looked at ikvm which is open source, doesn't look mature enough.
Also requires runtime support which is a negative for us due to the
extra overhead.
- bridge technology: uses some kind of proxy generator and provides a
communications channel between the Java app and the .NET app. Looked
at JNBridge, a commercial solution. This won't work for us because
part of our library requires high performance and we don't want the
overhead of crossing contexts and marshalling data.
- language conversion: convert Java to C#. Looked at Microsoft's
Java Language Conversion Assistant (beta version 3). This is a one
way conversion and requires lots of hand tweaking, so there's the
price of performing an initial port, plus the extra cost of
maintaining two versions. Artinsoft provides a way of customizing
the JCLA conversion process (which in theory could reduce the amount
of code that needs to be manually edited) but they seem to be aiming
this at one time conversions (they charge based on lines of code).
Are there any other approaches or solutions out there?
Thanks...
-- jeff