Получение “Никакого Репозитория Найденная” ошибка в Eclipse (Ganymede) при попытке установить плагины Google (GWT)

Как правило, если у Вас нет закрытий, нужно определить класс, чтобы нести с ним эквивалент среды закрытия и раздать его.

, Например, на языке как Lisp, можно определить функцию, которая возвращает функцию (с закрытым - по среде) для добавления некоторой предопределенной суммы к ее аргументу таким образом:

(defun make-adder (how-much)
  (lambda (x)
    (+ x how-much)))

и использование это как это:

cl-user(2): (make-adder 5)
#<Interpreted Closure (:internal make-adder) @ #x10009ef272>
cl-user(3): (funcall * 3)     ; calls the function you just made with the argument '3'.
8

На языке без закрытий, Вы сделали бы что-то вроде этого:

public class Adder {
  private int howMuch;

  public Adder(int h) {
    howMuch = h;
  }

  public int doAdd(int x) {
    return x + howMuch;
  }
}

и затем используют его как это:

Adder addFive = new Adder(5);
int addedFive = addFive.doAdd(3);
// addedFive is now 8.

закрытие неявно несет свою среду с ним; Вы беспрепятственно обращаетесь к той среде из выполняющейся части (лямбда). Без закрытий необходимо сделать ту среду явной.

, Который должен объяснить Вам, когда Вы использовали бы закрытия: все время . Большинство экземпляров, где класс инстанцируют, чтобы нести с ним некоторое состояние от другой части вычисления и применить его в другом месте, изящно заменяется закрытиями на языках, которые поддерживают их.

можно реализовать объектную систему с закрытиями.

12
задан seanyboy 9 July 2009 в 08:50
поделиться

3 ответа

Хорошо, я понял.

Я установил Eclipse Classic, и он мне не понравился. С тех пор я удалил классический и установил «Eclipse Java EE», и обновление сработало.

7
ответ дан 2 December 2019 в 03:32
поделиться

Looks like your eclipse mirror was corrupt. Use another one.

0
ответ дан 2 December 2019 в 03:32
поделиться

У меня была та же проблема, что было исправлено, так это изменение системы обновления, которую использовал Eclipse. Я использую Eclipse 3.5, а система обновления по умолчанию - P2 ( http://wiki.eclipse.org/Equinox_p2_Getting_Started ). Попробуйте войти в Prefereces-> General-> Capabilities-> установите флажок рядом с Classic Update. Это исправило это для меня.

1
ответ дан 2 December 2019 в 03:32
поделиться
Другие вопросы по тегам:

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