Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »


It is possible to run Groovy on .NET 2.0 using IKVM as a virtual machine. By using IKVM compiler, you can compile your Groovy jar to be a .NET assembly (a DLL file) with the following command:

However, some errors will appear, but you can ignore them. After compilation you should have groovy-all-1.1-SNAPSHOT.dll in the current directory.

Using the Groovy .NET Assembly

With the compiled DLL, you can use it as a normal .NET assembly. The following example shows how to add it as a reference for building a simple application. You need the SharpDevelop IDE in this case.

  • Open SharpDevelop, create a new .NET console application.
  • Add references, your groovy DLL, and all IKVM DLLs.
  • Open your main class, type the following code (in C# for example)
  • Run the program, and you'll also have an executable file as well (in ./Debug directory).

the original post:

Invoking .NET classes

We can call .NET classes directly from Groovy scripts. Note that IKVM has the cli prefix for all .NET namespaces. If you want to invoke Console.WriteLine('hello world'), you have to type:

The great thing here is that Groovy can pick a correct .NET method. You can also try:

in the interactive console (the binary in the attachment of this page).

Further development as a Groovy module

Should this be a Groovy Module? It is possible by providing a number of EXE files for invoking Groovy services (groovyc, groovy console, etc.). One important thing is that the process of compiling Groovy files into .NET DLL is a bit tricky. We can compile Groovy files into .classes using groovyc, then we have to pack them into a jar file, and finally call ikvmc to compile the jar in to a DLL.

  • No labels