Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Ant构建由于泛型而失败-并且仅在linux上_Java_Generics_Netbeans_Ant - Fatal编程技术网

Java Ant构建由于泛型而失败-并且仅在linux上

Java Ant构建由于泛型而失败-并且仅在linux上,java,generics,netbeans,ant,Java,Generics,Netbeans,Ant,我正试图在debian上构建我的一个项目(事实上,是hudson构建的),但构建失败了: [javac] (...)/src/vbp/gui/GUI.java:1569: type javax.swing.DefaultListModel does not take parameters [javac] private javax.swing.DefaultListModel<String> listModelInput; [javac]

我正试图在debian上构建我的一个项目(事实上,是hudson构建的),但构建失败了:

[javac] (...)/src/vbp/gui/GUI.java:1569: type javax.swing.DefaultListModel does not take parameters
[javac]     private javax.swing.DefaultListModel<String> listModelInput;
[javac]                                         ^
[javac](…)/src/vbp/gui/gui.java:1569:type javax.swing.DefaultListModel不接受参数
[javac]private javax.swing.DefaultListModel listModelInput;
[javac]^
问题是,DefaultListModel应该能够处理泛型

如果我用ant在我的windows机器上运行构建,它编译得非常好,只是在debian上不起作用。Ant版本是1.8.0,JDK是OpenJDK1.6

我的第一个想法是Ant以某种方式使用JDK1.4或其他东西来编译代码(因为编译错误是关于泛型的),事实上,它是在netbeans生成的构建脚本中编写的,但当我将其更改为1.5或1.6时,没有任何更改(如果这有帮助的话,那真的很奇怪,因为我得到的唯一错误是这个DefaultListModel类)

我真的不知道这是怎么回事。也许我发现了一个bug,但修复程序不在debian软件库中

您可以在此处查看该项目:

希望你能帮忙:)


编辑:

好的,这确实是OpenJDK 6中的一个bug。它是在OpenJDK 7中解决的

public class DefaultListModel extends AbstractListModel  // JDK6 implementation

public class DefaultListModel<E> extends AbstractListModel<E>  // JDK7 implementation
公共类DefaultListModel扩展了AbstractListModel//JDK6实现
公共类DefaultListModel扩展了AbstractListModel//JDK7实现
他们只是忘记了


嗯,至少我在我最喜欢的编程语言中发现了我的第一个bug:D

你在构建命令行中指定了
-target
级别了吗?

你在构建命令行中指定了
-target
级别了吗?

你确定把编译器改成了1.5+?您是如何确认的?@Saket:错误表明编译器是泛型识别的,但它认为类型不带参数。哇,这似乎是OpenJDK中的一个错误。至少是在6B14中,检查Debian上是否也使用了开放JDK(因为它似乎是Swing类中唯一支持泛型的JDK)。你在Debian上的
java版本是什么?NetBeans的情况也一样:您必须为此项目使用openjdk(设置项目构建属性)。是否确实将编译器更改为1.5+?您是如何确认的?@Saket:错误表明编译器是泛型识别的,但它认为类型不带参数。哇,这似乎是OpenJDK中的一个错误。至少是在6B14中,检查Debian上是否也使用了开放JDK(因为它似乎是Swing类中唯一支持泛型的JDK)。你在Debian上的
java版本是什么?NetBeans的情况也一样:您必须为此项目使用openjdk(设置项目构建属性)。