GCJ 1.4.2 which was forcefully bundled with Fedora Core 6 (and has been updated from their repository to the latest available version) must not be used with any enterprise product, nay for any Java project at all. 1.4.2 помощью gcj который был насильственно сопряжена с Fedora Core 6 (и был обновлен с их хранилища для последней версии) не должна быть использована с любым предприятием продукции, более того для любых проектов на Java всех. I know it is being used in OpenOffice, which I think is a serious mistake. Я знаю, что в настоящее время используется в OpenOffice, которое, по моему мнению является серьезной ошибкой. It is dangerously buggy and needs tons of testing even for hobbyist usage. Это плохо, опасно и потребностей тонн испытания даже для hobbyist использования. Let me explain why. Позвольте мне объяснить, почему.

Initializing Date class with no arguments gives the current Date. Запуск Дата класса без аргументов дает текущую дату. This is a very basic functionality which has been since 0.5 beta version of Java. Это очень базовой функциональности, которая была с 0,5 бета-версию Java. Let me give a simple example: Позвольте мне привести простой пример:

 public class TestDate {     public static void main(String args[]) {         System.out.println(”The current date is: ” + new java.util.Date());     } } общественного класса TestDate (государственной статической силы основных (String args []) (System.out.println ( "Текущая дата:" + новое java.util.Date ());)) 

This when compiled and run on GCJ 1.4.2 gives May 24th 2007 instead of the current date June 13th 2007! Это, когда собраны и работают на помощью gcj 1.4.2 дает 24 мая 2007 года, вместо текущей датой 13 июня 2007 года! Even the time and locale information is totally incorrect. Даже время и локали информация является абсолютно неверным. The JDK results are fully in sync with the Gnome display as also with date output from console as is to be expected. JDK результаты полностью синхронно с Gnome, а также дисплей с датой вывода из консоли, как и следовало ожидать. I have no idea where GCJ gets the date value from. Я понятия не имею, где помощью gcj получает выгоду от даты. I found this problem in a JSP code running on Tomcat which unfortunately has been configured by Fedora to run with GCJ. Я нашел эту проблему в JSP код работает на Tomcat, которые, к сожалению, была настроена на Fedora запускаться с помощью gcj.

I have tested it on two machines with vastly differing hardware but with same results. Я проверял на двух машинах с весьма различные аппаратные, но с одинаковым результатам. I couldn’t believe my eyes. Я не считаю мои глаза. Check it for yourself: Проверьте ее для себя:

[angsuman@jaguar ~]$ /etc/alternatives/java_sdk/bin/java -version && /etc/alternatives/java_sdk/bin/javac TestDate.java && /etc/alternatives/java_sdk/bin/java TestDate [angsuman jaguar @ ~] $ / и т.д. / альтернатив / java_sdk / бен / java-версию и и / и т.д. / альтернатив / java_sdk / бен / javac TestDate.java и и / и т.д. / альтернатив / java_sdk / бен / java TestDate
java version “1.4.2″ java версия "1.4.2"
gij (GNU libgcj) version 4.1.1 20070105 (Red Hat 4.1.1-51) gij (GNU libgcj) версии 4.1.1 20070105 (Red Hat 4.1.1-51)

Copyright (C) 2006 Free Software Foundation, Inc. Copyright (C) 2006 Free Software Foundation, Inc
This is free software; see the source for copying conditions. Это бесплатное программное обеспечение, см. источник для копирования условиях. There is NO Существует NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. гарантии; даже не за или КОММЕРЧЕСКОЙ ПРИГОДНОСТИ ДЛЯ КОНКРЕТНОЙ ЦЕЛИ.
The current date is: Thu May 24 15:04:07 GMT-`1:47 2007 Текущая дата заключается в следующем: Чт 24 мая 15:04:07 GMT-1:47 `2007

[angsuman@jaguar ~]$ java -version && javac TestDate.java && java TestDate [angsuman jaguar @ ~] $ java-версию и TestDate.java и javac и java и TestDate
java version “1.6.0_01″ java версия "1.6.0_01"
Java(TM) SE Runtime Environment (build 1.6.0_01-b06) Java (TM) SE Runtime Environment (строительство 1.6.0_01-b06)
Java HotSpot(TM) Server VM (build 1.6.0_01-b06, mixed mode) Java HotSpot (TM) Server В.М. (строительство 1.6.0_01-b06, смешанном режиме)
The current date is: Wed Jun 13 22:21:56 IST 2007 Текущая дата заключается в следующем: Wed Jun 13 22:21:56 IST 2007

Note: The above is raw output from my machine. Примечание: Данный вывод является сырье из моей машины.

Any JVM which cannot even correctly give the date isn’t worth a dime in book, let alone be a JDK replacement. Любое JVM, которые даже не могут правильно дать сегодняшний день не стоит копейки в книге, не говоря уж быть JDK замены. Not to mention this piece of $%^& doesn’t support generics or other JDK 5 & 6 features. Не говоря уж этот кусочек $% ^ и не поддерживает генерические или иных JDK 5 и 6 функции. I would strongly suggest any Linux user to stay away from GCJ. Я бы настоятельно рекомендуем любого пользователя Linux держаться подальше от помощью gcj. What GCJ implements is simply not Java; it is hazardous for your programming health and reputation, not to mention Java’s reputation. Что помощью gcj реализует просто не Java, но являются опасными для Вашего здоровья программирования и репутацию, не говоря уже о Java репутации.