为什么javac发出;错误:类中的方法无法应用于给定类型;在静态上下文中使用实例方法时?

为什么javac发出;错误:类中的方法无法应用于给定类型;在静态上下文中使用实例方法时?,java,java-8,javac,Java,Java 8,Javac,考虑以下(无效)Java程序: public class Test { public static void main(String[] args) { int[] ints = {1, 2, 3, 4, 5}; print(ints); } public void print(int... ints) { for (int i : ints) { System.out.print(i);

考虑以下(无效)Java程序:

public class Test {
    public static void main(String[] args) {
        int[] ints = {1, 2, 3, 4, 5};
        print(ints);
    }

    public void print(int... ints) {
        for (int i : ints) { 
            System.out.print(i);
        }
    }
}
我预计会出现类似的错误:

Cannot make a static reference to the non-static method print(int[]) from the type Test
at Test.main(Test.java:5)
但是,javac却发出:

Test.java:5: error: method print in class Test cannot be applied to given types;
    print(ints);
    ^
required: int[]
found: int[]
reason: varargs mismatch; int[] cannot be converted to int
1 error
javac-version
javac1.8.0\u11
java版本

java version "1.8.0_11"
Java(TM) SE Runtime Environment (build 1.8.0_11-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.11-b03, mixed mode)

这件事发生在年。这是javac中的一个bug吗?还是我错过了一些显而易见的东西

这是一个bug,已报告为。(是您吗?

这是一个bug。您(或某人)应该向Oracle报告。事实上,这是Java 8编译器中的一个错误,它报告了Java 7的正确错误,看起来它已经归档了。很高兴知道这个错误。可能重复的错误被关闭,因为不是问题。请查看@ajb上的评论,该错误报告包含JavaC1.8.0\u 05这也是一个回归,
JavaC1.7.0\u 51输出:Test.java:5:error:non-static method print(int…)无法从静态上下文中引用,感谢您查找错误报告。。。我在bugs.java.com知道这些,但不在这里。