Это означает, что вы либо используете одно и то же имя функции / класса дважды, и вам нужно переименовать один из них, или это потому, что вы использовали require
или include
, где вы должны использовать require_once
или include_once
.
Когда класс или функция объявляется в PHP, он неизменен и не может быть позже объявлен с новым значением.
Рассмотрим следующий код:
class.php
<?php
class MyClass
{
public function doSomething()
{
// do stuff here
}
}
index.php
<?php
function do_stuff()
{
require 'class.php';
$obj = new MyClass;
$obj->doSomething();
}
do_stuff();
do_stuff();
Второй вызов do_stuff()
приведет к получению ошибка выше. Изменяя require
на require_once
, мы можем быть уверены, что файл, содержащий определение MyClass
, будет загружен только один раз, и ошибка будет устранена.
Я выбираю m2eclipse, так как это стабильно, и имейте все, в чем я нуждаюсь. Особенно способность разрешить зависимости в рабочей области.
я попробовал другой некоторое время назад и не любил его. Это было к багги, таким образом, я сдался быстро.
Рядом сравнение плагинов Знатока для Eclipse. Это не было обновлено к недавно дополнительным функциям. Например, см. страница New и Noteworthy для m2eclipse.
Для меня как полный Знаток-новичок плагин m2eclipse работал вполне хорошо. Мы управляем приблизительно 15 проектами с ним. Вложенные проекты Знатока будут плоскими в Eclipse (поскольку он не поддерживает вложенные проекты), но все они были автоматически настроены правильный путь, таким образом, все хорошо работает. До сих пор я никогда не должен был вручную вызывать команду Maven для меня использующий предварительно сконфигурированный, "выполненный, поскольку" конфигурации запуска сделали свое задание вполне хорошо.
Для меня качество m2eclipse может быть оценено по этому простому примеру: при выполнении Eclipse на JRE вместо JDK m2eclipse показывает предупреждение, что некоторые его функции полагаются на JDK. Тем не менее, это все еще работает над JRE. И диалоговое окно предупреждения имеет гиперссылки к документации Eclipse о параметрах командной строки и к "Установленному JREs" предпочтения, таким образом, можно легко зафиксировать неправильный Java VM.
, Который сказал, что я не могу говорить за или против, я, поскольку я никогда не использовал его из-за хорошего опыта m2eclipse.
Я использовал m2eclipse. Но мне никогда не удавалось запустить тесты, или целый проект из затмения (проект вложил папки для различных подмодулей). Когда я использовал его, они сказали поддержку того, который был экспериментален. Максимум, который я мог получить, был проверкой синтаксиса и таким. Для остальных я использовал консоль.
не любил опыта во всем .
а как насчет проекта с несколькими модулями?, Плагин m2eclipse неэффективен. Особенно если использовать военный модуль.
Параллельное сравнение перемещено на http://web.archive.org/web/20150526230611/http://docs.codehaus.org/display/MAVENUSER/Eclipse+Integration