Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > f234ddc6f7958e400f482fa4eafef0f8 > files > 29

ikvm-0.40.0.1-1mdv2010.0.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>IKVM.NET Concepts</title>
<link type="text/css" href="../skin/page.css" rel="stylesheet">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<!--================= start Navigation Path ==================-->
<table summary="navigation path" width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td nowrap="nowrap" valign="middle" bgcolor="#CFDCED" height="20"><img height="1" width="5" alt="" src="../skin/images/spacer.gif" class="spacer"><!--===== breadcrumb trail (javascript-generated) ====--><font size="2" face="Arial, Helvetica, Sans-serif"><script src="../skin/breadcrumbs.js" language="JavaScript" type="text/javascript"></script></font></td>
</tr>
<tr>
<td bgcolor="#4C6C8F" height="2"><img height="2" width="2" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
</table>
<!--================= end Navigation Path ==================-->
<!--================= start Banner ==================-->
<table summary="header with logos" width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<!--================= start Group Logo ==================-->
<td bgcolor="#294563"></td>
<!--================= end Group Logo ==================-->
<!--================= start Project Logo ==================--><td width="100%" align="center" bgcolor="#294563"><a href="http://www.ikvm.net/"><img border="0" class="logoImage" alt="IKVM.NET" src="../images/project.gif" title="Java on .NET"></a></td>
<!--================= end Project Logo ==================-->
<!--================= start Search ==================--><td valign="top" rowspan="2" bgcolor="#294563"></td>
<!--================= start Search ==================--><td bgcolor="#294563"><img height="10" width="10" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td valign="bottom" bgcolor="#294563" colspan="2">
<!--================= start Tabs ==================-->
<div class="tab">
<table summary="tab bar" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="6"><img alt="" height="8" width="6" src="../skin/images/spacer.gif"></td>
</tr>
</table>
</div>
<!--================= end Tabs ==================-->
</td><td bgcolor="#294563"><img alt="" width="1" height="1" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td bgcolor="#4C6C8F" colspan="4"><img width="1" height="10" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
</table>
<!--================= end Banner ==================-->
<!--================= start Menu, NavBar, Content ==================-->
<table summary="page content" bgcolor="#ffffff" width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td valign="top">
<table summary="menu" border="0" cellspacing="0" cellpadding="0">
<tr>
<!--================= start left top NavBar ==================-->
<td rowspan="3" valign="top">
<table summary="blue line" border="0" cellpadding="0" cellspacing="0">
<tr>
<td bgcolor="#294563"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td bgcolor="#CFDCED"><font color="#4C6C8F" size="4" face="Arial, Helvetica, Sans-serif">&nbsp;</font></td>
</tr>
<tr>
<td bgcolor="#294563"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
</table>
</td>
<!--================= end left top NavBar ==================--><td bgcolor="#294563"><img width="1" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td valign="bottom" bgcolor="#4C6C8F"><img width="10" height="10" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td nowrap="nowrap" valign="top" bgcolor="#4C6C8F">
<!--================= start Menu items ==================-->
<div class="menu">
<ul>
<li>
<font color="#CFDCED">About</font>
<ul>
    
<li>
<a href="../index.html" title="">Home</a>
</li>
    
<li>
<a href="../download.html" title="">Download</a>
</li>
    
<li>
<a href="../uses.html" title="">Uses</a>
</li>
    
<li>
<a href="http://weblog.ikvm.net" title="">News</a>
</li>
    
<li>
<a href="http://weblog.ikvm.net/story.aspx/faq" title="">FAQ</a>
</li>
    
<li>
<a href="http://weblog.ikvm.net/story.aspx/license" title="">License</a>
</li>
    
<li>
<a href="../stories.html" title="">Case Studies</a>
</li>
  
</ul>
</li>
<li>
<font color="#CFDCED">User's Guide</font>
<ul>
    
<li>
<a href="../userguide/intro.html">Introduction</a>
</li>
    
<li>
<a href="../userguide/install.html" title="">Installation</a>
</li>
    
<li>
<a href="../userguide/tutorial.html" title="">Tutorial</a>
</li>
    
<li>
<a href="../userguide/tools.html" title="">Tools Reference</a>
</li>
      
      
      
  
</ul>
</li>
<li>
<font color="#CFDCED">Developer's Guide</font>
<ul>
    
<li>
<a href="../devguide/intro.html" title="">Introduction</a>
</li>    
    
<li>
<span class="sel"><font color="#ffcc00">Concepts</font></span>
</li>
    
<li>
<a href="../devguide/net2java.html" title="">Using Java Libraries</a>
</li>
    
<li>
<a href="../devguide/java2net.html" title="">Developing in Java</a>
</li>
  
</ul>
</li>
<li>
<font color="#CFDCED">Contributing</font>
<ul>
    
<li>
<a href="http://sourceforge.net/mail/?group_id=69637">Mailing Lists</a>
</li>
    
<li>
<a href="http://sourceforge.net/tracker/?group_id=69637">Report Bugs</a>
</li>
    
<li>
<a href="http://sourceforge.net/cvs/?group_id=69637">CVS Repository</a>
</li>
  
</ul>
</li>
</ul>
</div>
<!--================= end Menu items ==================-->
</td><td valign="bottom" bgcolor="#4C6C8F"><img width="10" height="10" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td bgcolor="#294563"><img width="1" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td valign="bottom" align="left" colspan="2" rowspan="2" bgcolor="#4C6C8F"><img height="10" width="10" border="0" alt="" src="../skin/images/menu-left.gif"></td><td bgcolor="#4C6C8F"><img height="10" width="10" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td valign="bottom" align="right" colspan="2" rowspan="2" bgcolor="#4C6C8F"><img height="10" width="10" border="0" alt="" src="../skin/images/menu-right.gif"></td>
</tr>
<tr>
<td height="1" bgcolor="#294563"><img width="1" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
</table>
</td><td valign="top" width="100%">
<table summary="content" width="100%" border="0" cellpadding="0" cellspacing="0">
<!--================= start middle NavBar ==================-->
<tr>
<td colspan="4" bgcolor="#294563"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td align="left" width="10" bgcolor="#CFDCED"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td align="left" width="50%" bgcolor="#CFDCED"><font color="#4C6C8F" size="3" face="Arial, Helvetica, Sans-serif">
                &nbsp;
                
                </font><img width="10" height="8" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td align="right" width="50%" bgcolor="#CFDCED"><font color="#4C6C8F" size="3" face="Arial, Helvetica, Sans-serif">
                &nbsp;
                
                </font><img width="10" height="8" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td width="10" bgcolor="#CFDCED"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<tr>
<td colspan="4" bgcolor="#294563"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<!--================= end middle NavBar ==================-->
<!--================= start Content==================-->
<tr>
<td align="left" width="10"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td><td colspan="2" align="left" width="100%">
<div xmlns:xhtml="http://www.w3.org/1999/xhtml" class="content">
<table class="title" summary="">
<tr>
<td valign="middle">
<h1>IKVM.NET Concepts</h1>
</td>
</tr>
</table>
<p>This section discusses several important concepts about
     the capabilities and limitations of IKVM.NET. </p>
<ul class="minitoc">
<li>
<a href="#Class+Loading">Class Loading</a>
</li>
<li>
<a href="#Debugging+Support">Debugging Support</a>
</li>
</ul> 
    
<a name="N10015"></a><a name="Class+Loading"></a>
<h3>Class Loading</h3>
<div style="margin-left: 0 ; border: 2px">
<p>IKVM.NET fully supports dynamic Java class loading, both in Java applications running in the ikvm 
      JVM, as well as in Java applications which have been converted to .NET CIL using ikvmc. 
      </p>
<a name="N1001E"></a><a name="Class+Loading+in+Dynamically+Interpreted+Java+Applications"></a>
<h4>Class Loading in Dynamically Interpreted Java Applications</h4>
<div style="margin-left: 0 ; border: 2px">
<p>When you run a Java application using ikvm, ikvm finds and loads Java .class files much like
        other Java VM's. See the <a href="../userguide/ikvm.html">ikvm notes</a> for details.</p>
</div>
<a name="N1002C"></a><a name="Class+Loading+in+ikvmc-compiled+Java+Applications"></a>
<h4>Class Loading in ikvmc-compiled Java Applications</h4>
<div style="margin-left: 0 ; border: 2px">
<p>When you convert a Java application to CIL using ikvmc, it executes as "native" .NET code. Each .NET assembly will have its own
        Java class loader instance (typically of the type ikvm.runtime.AssemblyClassLoader). This class loader will load classes using the following algorithm:</p>
<ol>
          
<li>The corresponding assembly is searched first. Thus, if the class exists in the assembly, it will be found there.</li>
          
<li>All assemblies directly referenced by corresponding assembly are searched.</li>
        
</ol>
<p>For more details see these two articles: <a href="http://weblog.ikvm.net/PermaLink.aspx?guid=4e0b7f7c-6f5d-42a3-a4d6-5d05a99c84ff">Class Loading Architecture</a>, <a href="http://weblog.ikvm.net/PermaLink.aspx?guid=375f1ff8-912a-4458-9120-f0a8cfb23b68">Writing a Custom Assembly Class Loader</a>
</p>
</div>
</div>
    
    
<a name="N1004A"></a><a name="Debugging+Support"></a>
<h3>Debugging Support</h3>
<div style="margin-left: 0 ; border: 2px">
<p>Java applications converted to CIL using ikvmc with the -debug option can be debugged using standard .NET / Mono debugging
      tools. Remember to compile the Java source code using the appropriate debug option (javac: -g or jikes: -g:lines,vars,source).</p>
</div>
  
<div class="attribution">by&nbsp;Stephen Schaub</div>
</div>
</td><td width="10"><img width="10" height="1" alt="" src="../skin/images/spacer.gif" class="spacer"></td>
</tr>
<!--================= end Content==================-->
</table>
</td>
</tr>
</table>
<!--================= end Menu, NavBar, Content ==================-->
<!--================= start Footer ==================-->
<table summary="footer" cellspacing="0" cellpadding="0" width="100%" border="0">
<tr>
<td colspan="2" height="1" bgcolor="#4C6C8F"><img height="1" width="1" alt="" src="../skin/images/spacer.gif" class="spacer"><a href="../skin/images/label.gif"></a><a href="../skin/images/page.gif"></a><a href="../skin/images/chapter.gif"></a><a href="../skin/images/chapter_open.gif"></a><a href="../skin/images/current.gif"></a><a href="/favicon.ico"></a></td>
</tr>
<tr>
<td colspan="2" bgcolor="#CFDCED" class="copyright" align="center"><font size="2" face="Arial, Helvetica, Sans-Serif">
	  
      Send feedback about this page to <a href="mailto:webmaster@ikvm.net?subject=IKVM Website Feedback - Page devguide/concepts.html">webmaster@ikvm.net</a>
<br>
	  
	  Copyright &copy;
          2008&nbsp;Jeroen Frijters  All rights reserved.<script type="text/javascript" language="JavaScript"><!--
              document.write(" - "+"Last Published: " + document.lastModified);
            //  --></script></font></td>
</tr>
<tr>
<td colspan="2" align="left" bgcolor="#CFDCED" class="logos"></td>
</tr>
</table>
<!--================= end Footer ==================-->
</body>
</html>