GCJ и <Пустота, Пустота> - PullRequest
       25

GCJ и <Пустота, Пустота>

0 голосов
/ 22 декабря 2011

Известна ли проблема с GCJ и использованием <Void, Void>?Мой код прекрасно работает без него, но попытка скомпилировать его в exe-файл с помощью gcj не удается:

$ gcj -c -g -O Program.java
Program.java:25: error: '{' expected.
        class Task extends SwingWorker<Void, Void> {
                                         ^
Program.java:25: error: Class or interface declaration expected.
        class Task extends SwingWorker<Void, Void> {
                                         ^
Program.java:25: error: .
        class Task extends SwingWorker<Void, Void> {
                                         ^
3 errors

Кроме того, если я удаляю <Void, Void> (так что мой код не работает на 100%), я получаюниже это:

$ gcj -c -g -O Program_Full.java
Program.java:10: error: Class or interface `javax.imageio.ImageIO' not found in import.
   import javax.imageio.ImageIO;
          ^
Program.java:25: error: Superclass `SwingWorker' of class `Program$Task' not found.
        class Task extends SwingWorker {
                              ^
2 errors

Мой код компилируется и работает отлично, просто кажется, что GCJ не нравятся некоторые аспекты.Плохая версия?Я только что загрузил его: gcc версия 3.4.4 (специальный cygming, gdc 0.12, используя dmd 0.125)

1 Ответ

0 голосов
/ 22 декабря 2011

Я не знаю, где находится gcj в текущей версии или что поддерживает ваша версия, но похоже, что вы используете версию, которая не имеет Java 5 и более новые языковые функции, такие как дженерики.

Я бы рекомендовал забыть о gcj и использовать вместо этого Oracle JDK для компиляции и запуска ваших программ на Java.На мой взгляд, gcj бесполезен для любой серьезной разработки программного обеспечения Java.

...