Author: amitman...@google.com
Date: Thu Mar 26 10:52:25 2009
New Revision: 5090

Modified:
    wiki/GwtJavaApiCompatibilityChecker.wiki

Log:
Edited wiki page through web user interface.

Modified: wiki/GwtJavaApiCompatibilityChecker.wiki
==============================================================================
--- wiki/GwtJavaApiCompatibilityChecker.wiki    (original)
+++ wiki/GwtJavaApiCompatibilityChecker.wiki    Thu Mar 26 10:52:25 2009
@@ -106,9 +106,7 @@

  = Discussion =

-The !ApiCompatibilityChecker tool uses !TypeOracle to compute the API  
differences. !TypeOracle in turn requires access to the java source code.  
Thus the tool can only work when Java source is available. An alternative  
to !TypeOracle would be to use Java reflection which works on class files,  
and would not have required access to the source files. However, because of  
three disadvantages, we chose !TypeOracle over Java relfection:
-   # One use case for the tool was to make the JRE library support that  
GWT offers  be compatible to a real JRE implementation. However, the JRE  
libraries that GWT currently offers are not complete, and are currently not  
offered as class files. The use of Java reflection would have prevented us  
from running the tool to compare GWT's current support of JRE with a real  
JRE.
-   # With !TypeOracle, we could tap into the already existing GWT compiler  
infrastructure. We could not find an analogous tool (with compatible  
licenses) in case of Java Reflection. (Japize, a tool which uses Java  
reflection to check for binary compatibility, could have  been suitable,  
but the tool was under a GPL license.)  With Reflection, everything would  
have to be developed from scratch.
+The !ApiCompatibilityChecker tool uses !TypeOracle to compute the API  
differences. !TypeOracle in turn requires access to the java source code.  
Thus the tool can only work when Java source is available. An alternative  
to !TypeOracle would be to use Java reflection which works on class files,  
and would not have required access to the source files. However, we  
chose !TypeOracle over Java relfection because with !TypeOracle, we could  
tap into the already existing GWT compiler infrastructure. We could not  
find an analogous tool (with compatible licenses) in case of Java  
Reflection. (Japize, a tool which uses Java reflection to check for binary  
compatibility, could have  been suitable, but the tool was under a GPL  
license.)  With Reflection, everything would have to be developed from  
scratch.

  = References =
     # http://wiki.eclipse.org/index.php/Evolving_Java-based_APIs

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Reply via email to