Uploaded image for project: 'JikesRVM'
  1. JikesRVM
  2. RVM-358

Initial support for Apache Harmony class library

    Details

      Description

      Apache Harmony and IcedTea provide alternatives to GNU Classpath for our class library implementation. We should support these class libraries as they provide a work around for when functionality is missing from GNU Classpath or to see what performance issues there are.

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            steveblackburn Steve Blackburn added a comment -

            I think this is an important goal. If Jikes RVM were a) to be class library-independent, and b) to have Apache Harmony bindings, it would be a great step forward.

            Does anyone know of any other JVMs out there with both GNU classpath and Apache Harmony bindings?

            Apparently the new Google VM to be used in their phone is using the Apache libraries, and it appears (from some stack traces I've seen that the latest product JVM from IBM is now using some version of the apache libraries too (as of mid-December 2007). So it is definitely one to keep an eye on.

            --Steve

            Show
            steveblackburn Steve Blackburn added a comment - I think this is an important goal. If Jikes RVM were a) to be class library-independent, and b) to have Apache Harmony bindings, it would be a great step forward. Does anyone know of any other JVMs out there with both GNU classpath and Apache Harmony bindings? Apparently the new Google VM to be used in their phone is using the Apache libraries, and it appears (from some stack traces I've seen that the latest product JVM from IBM is now using some version of the apache libraries too (as of mid-December 2007). So it is definitely one to keep an eye on. --Steve
            Hide
            gnu_andrew Andrew John Hughes added a comment -

            For OpenJDK/IcedTea integration, it may be worth checking CACAO (http://www.cacaovm.org/) which already supports both that and GNU Classpath. I think the biggest issue there for JikesRVM will be that it relies on libjvm.so which I don't believe we currently provide.

            That seems the most fruitful endeavour. I don't see the advantage of supporting another incomplete class library implementation, and the general shift in the GNU Classpath community is towards OpenJDK.

            Show
            gnu_andrew Andrew John Hughes added a comment - For OpenJDK/IcedTea integration, it may be worth checking CACAO ( http://www.cacaovm.org/ ) which already supports both that and GNU Classpath. I think the biggest issue there for JikesRVM will be that it relies on libjvm.so which I don't believe we currently provide. That seems the most fruitful endeavour. I don't see the advantage of supporting another incomplete class library implementation, and the general shift in the GNU Classpath community is towards OpenJDK.
            Hide
            gnu_andrew Andrew John Hughes added a comment -

            Is there any news on Apache Harmony integration? With regards to OpenJDK, I can see some difficulties in integrating it with JikesRVM. For example, just looking at java.lang.Object shows a number of native methods in that class (e.g. hashCode(), clone()) which GNU Classpath would house in VMObject.

            Show
            gnu_andrew Andrew John Hughes added a comment - Is there any news on Apache Harmony integration? With regards to OpenJDK, I can see some difficulties in integrating it with JikesRVM. For example, just looking at java.lang.Object shows a number of native methods in that class (e.g. hashCode(), clone()) which GNU Classpath would house in VMObject.
            Hide
            ianrogers Ian Rogers added a comment -

            For situations like Object we provide our own implementation in the common library interface. For IcedTea/OpenJDK integration it may be better for us to work on BrandWeg and recycle the work we have for Classpath. I'll start sticking the harmony integration code I have into the repository when I get a bit more going.

            Show
            ianrogers Ian Rogers added a comment - For situations like Object we provide our own implementation in the common library interface. For IcedTea/OpenJDK integration it may be better for us to work on BrandWeg and recycle the work we have for Classpath. I'll start sticking the harmony integration code I have into the repository when I get a bit more going.
            Hide
            ianrogers Ian Rogers added a comment -

            In r14352 and r14353 I created a Harmony branch in the Jikes RVM [1] and added support for downloading and building Harmony. The next task is to remove dependencies Jikes RVM has on Classpath.

            [1] https://jikesrvm.svn.sourceforge.net/svnroot/jikesrvm/rvmroot/branches/RVM-358-Harmony/

            Show
            ianrogers Ian Rogers added a comment - In r14352 and r14353 I created a Harmony branch in the Jikes RVM [1] and added support for downloading and building Harmony. The next task is to remove dependencies Jikes RVM has on Classpath. [1] https://jikesrvm.svn.sourceforge.net/svnroot/jikesrvm/rvmroot/branches/RVM-358-Harmony/
            Hide
            ianrogers Ian Rogers added a comment -

            Initial support for Harmony is now provided in r14455. Issues that haven't yet been addressed should be placed under the "Runtime: Class Library: Apache Harmony" category.

            Show
            ianrogers Ian Rogers added a comment - Initial support for Harmony is now provided in r14455. Issues that haven't yet been addressed should be placed under the "Runtime: Class Library: Apache Harmony" category.
            Hide
            dgrove David Grove added a comment -

            reopening so I can modify fix target to 3.0

            Show
            dgrove David Grove added a comment - reopening so I can modify fix target to 3.0

              People

              • Assignee:
                ianrogers Ian Rogers
                Reporter:
                ianrogers Ian Rogers
              • Votes:
                0 Vote for this issue
                Watchers:
                0 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: