Вопрос по javac, java, eclipse – Как настроить Eclipse для компиляции с использованием Oracle javac 1.7.0_09?

7

Я пытаюсь скомпилировать следующий фрагмент кода:

public class DuplicateMainExample {
    public static void main(String[] args) {
        System.out.print("A1");
    }

    public static void main(String... args) {
        System.out.print("A2");
    }   
}

В Eclipse это 'работает нормально, но с предупреждениями на оба метода - "Дублировать метод main (String []) в типе DuplicateMainExample "

С помощьюjavac (Java-версия "1.7.0_09") У меня ошибка компиляции:

>javac DuplicateMainExample.java
DuplicateMainExample.java:8: error: cannot declare both main(String...) and main
(String[]) in DuplicateMainExample
        public static void main(String... args) {
                           ^
1 error

Как скомпилировать в Eclipse используя?javac

Ваш актуальный вопрос является дубликатомУстановили два JDK, как переключить компилятор Java в Eclipse Brian Roach
Хм, это ошибка в ecj, вы должны сообщить, что fge

Ваш Ответ

2   ответа
4

использование Javac. Его способность делать динамическое выделение тесно связана с его собственным компилятором, который обладает особыми способностями работать постепенно.

Если вы хотите интегрированную среду разработки, которая использует javac, вы можете исследовать intellij.

10

что вы объявили один и тот же метод дважды с одинаковой сигнатурой ... Должен быть объявлен только один основной метод для класса.

Eclipse имеет свой собственный компилятор, и в случае двух основных методов он получает последний, компилятор eclipse и компилятор javac - это два разных компилятора ...

Взгляни наэтот старый пост для дополнительной информации ...

Если вы хотите скомпилировать с Javac, вы можете попробоватьиспользуя адаптер ant javac из затмения ... Однако я думаю, что ECJ даже лучше, чем Javac (мое мнение) ...

Это необъяснить, почему это работает в Eclipse. ldam
@fge посмотрите на обновленный ответ ... aleroot
Это был не вопрос, на самом деле. Я думаю, что ОП знает об этом. Вопрос в том, как заставить Eclipse использовать собственно javac вместо собственного внешнего интерфейса. fge
@Logan, как объяснено в ссылке "старый пост " ECJ может создавать (частичные) файлы .class даже из кода с ошибками компиляции. В этом конкретном случае вы былисчастливый" что файл .class недаже не нужно выдавать исключение в месте ошибки, потому что безошибочный метод действительно существует (просто удаляя другой метод). Понимание этого должно быть достаточным, чтобы быть счастливым с ECJ - не нужно прыгать через обручи, чтобы позволить Eclipse вызывать javac через ant большую часть немедленных отзывов ... Stephan Herrmann

Похожие вопросы