harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Xiao-Feng Li" <xiaofeng...@gmail.com>
Subject Re: [general] Ja.NET SE OSS Project
Date Wed, 03 Dec 2008 14:16:19 GMT
On Wed, Dec 3, 2008 at 9:07 PM, Dave <Dave@janetdev.org> wrote:
> Hi Xiao-Feng,
> Yes, the compiler generates .NET CLR byte code.  Of course it is still also
> able to generate java byte code as well.
> A Ja.NET SE distribution includes both the Harmony JVM(i.e. DRLVM) as well
> as a Ja.NET SE VM adapter that I have developed.  The adapter is a small
> layer that sits between the compiled .NET version of the class libraries
> and the .NET CLR/Framework.  It deals with the differences between the two
> runtimes. Using options to the Harmony Java launcher you pick what VM
> (DRLVM or CLR) you want started.  By default, with a Ja.NET SE
> distribution, the default VM loaded is the Ja.NET VM adapter/CLR instead of
> the DRLVM.  You can still load the DRLVM by simply invoking the launcher
> with: "java -vmdir:drlvm .....".
> When compiling code, the Ja.NET SE compiler, by default, will generate CLR
> CIL in PE files (i.e. .NET Assemblies), instead of Java .class files.  I
> provide a tool called "bam", that can then be used to "jar" up the created
> assemblies into a larger unit (i.e .NET Assembly), for improved performance
> when running on .NET. The assemblies/.NET Types generated by javac/bam are
> the fully compatible with the rest of .NET, so you are able to incorporate
> them with other .NET languages (e.g. C#, VB.NET, etc.) as needed.  So for
> example, in a C# application you are able to add a reference to
> "janet.luni.dll" (i.e. Harmony LUNI module compiled to a .NET assembly) and
> use the types in the assembly (e.g. "java.lang.System.out.println("Hello
> World!")) as you would expect.  And of course the reverse of that is true.
> That is, in Java you are able to easily reference .NET types in other
> assemblies, created by other languages, by simply including the assemblies
> on the classpath to the compiler, and then referencing them in Java as you
> normally would. As I mentioned earlier, Ja.NET SE compiler is still capable
> of generating Java byte code instead of .NET CIL. You must invoke it with
> the "-java" option:   "javac -java  a/b/c.java", and then you can run the
> output on the DRLVM by: "java -vmdir:drlvm a.b.c".
> I'll add some more details on my website to better clarify what technology
> approach I've taken!.... Thanks!
> Again, thanks for all your hard work...
> -Dave

I see. Thanks for the explanation. Really interesting! Will have a look.


> ----------------------------------------
> From: "Xiao-Feng Li" <xiaofeng.li@gmail.com>
> Sent: Tuesday, December 02, 2008 6:29 PM
> To: dev@harmony.apache.org, Dave@janetdev.org
> Subject: Re: [general] Ja.NET SE OSS Project
> On Wed, Dec 3, 2008 at 2:35 AM, Dave wrote:
>> Hi All,
>> I just wanted to take a minute and bring your attention to an OSS
> project,
>> based on Harmony, I recently started .... Ja.NET (www.janetdev.org).
>> I am building a Java 5 JDK for .NET (i.e. Ja.NET SE), and I am using
>> Harmony, along with other open source software (e.g. Eclipse compiler,
>> Mono, etc.) as the basis for the work. The goal of the project is to
>> create the development tools and libraries that will enable Java to
> become
>> a "first class" development and runtime environment for .NET. The Ja.NET
> SE
>> JDK project is the first thing I have kicked off. The hope is, at some
>> point in the "very near future", :-), the Ja.NET SE JDK will give
>> developers all the Java development tools they need to develop software
> in
>> Java for the .NET platform. For example, the Java development tools
> would
>> enable someone to take existing Java source code (e.g. Ant, Xerces,
>> Eclipse, etc.) and easily build it, enhance it with new .NET specific
>> features, integrate it with other .NET code and libraries (e.g. C#,
>> WPF, etc.), and then ultimately use/run it on .NET.
> This is cool!
> Dave, what's the technology approach you are taking for Ja.NET JDK?
> Does it compile Java code into CLR bytecode running on Mono? I can't
> find any document in your website about it.
> Thanks,
> xiaofeng
>> I'm making pretty good progress THANKS TO YOU and the great work you
> have
>> done in building Harmony. Without your effort, I'd be a long way from
> where
>> I am today! So here is a big THANK YOU for all your hard work and
>> dedication to open source Java.
>> I look forward to working with you where/when it makes sense, and hope
> that
>> I can contribute in some small way to the success of Harmony in the
>> future....
>> Best regards,
>> -Dave
> --
> http://xiao-feng.blogspot.com


View raw message