Для тех, кто находит это в будущем, я бы не рекомендовал использовать mail
. Есть несколько ответов, которые касаются этого, но не из-за этого.
Функция PHP mail
не только непрозрачна, но и полностью зависит от того, какой MTA вы используете (то есть Sendmail) для выполнения этой работы. mail
ТОЛЬКО скажет вам, не удалось ли MTA принять его (т. е. Sendmail не был отправлен, когда вы пытались отправить). Он не может сказать вам, была ли почта успешной, потому что она была передана. Как таковой (как детали ответов Джона Конде), вы теперь можете возиться с журналами MTA и надеяться, что он расскажет вам об отсутствии возможности исправить его. Если вы находитесь на общем хосте или не имеете доступа к журналам MTA, вам не повезло. К сожалению, по умолчанию для большинства ванильных инсталляций для Linux обрабатывается так.
Почтовая библиотека ( PHPMailer , Zend Framework 2+ и т. д.) делает что-то очень отличное от mail
. То, что они делают, это открыть сокет непосредственно на принимающем почтовом сервере, а затем отправить SMTP-почтовые команды непосредственно через этот сокет. Другими словами, класс действует как собственный MTA (обратите внимание, что вы можете сказать библиотекам использовать mail
, чтобы в конечном итоге отправить почту, но я настоятельно рекомендую вам не делать этого).
Что это означает, что вы можете непосредственно видеть ответы с принимающего сервера (например, в PHPMailer вы можете включить вывод отладки ). Больше не гадать, если почта не была отправлена или почему.
Если вы используете SMTP (то есть вы вызываете
isSMTP()
), вы можете получить подробную расшифровку протокола SMTP, используя свойствоSMTPDebug
.Установите этот параметр, включив в свой скрипт такую строку:
$mail->SMTPDebug = 2;
Вы также получаете преимущество лучшего интерфейса. С помощью
Если ваш проблема не решена, а затем замените файл резервным файлом.
Nuking Derived Data - первое, что нужно попробовать во всех случаях неудачного Xcode
Я также столкнулся с этой проблемой при установке новой версии XCode. Я решил это, используя следующее решение: я открыл свой проект в XCode на всю ночь, это исправило мою проблему.
Столкнувшись с этим недавно на XCode 7.3.1 - для меня, я заметил, что использование ОЗУ будет 100% на CleanMyMac3. Проблема волшебным образом закрепилась после перезагрузки моей машины. Справедливости ради, однако, я уже пошел вперед и попробовал принятый ответ, так что вы захотите сделать то же самое, прежде чем перезапустить на всякий случай: -)
У меня была такая же проблема в swift 2.2
. Это связано с функцией перегруженной функции функции
func warnLog() {
print("Warning line: \(#line) file: \(#file) ")
}
func warnLog<T>(input:T? = nil) -> T? {
print("Warning line: \(#line) file: \(#file) ")
return input
}
func warnLog<T>(input:T) -> T {
print("Warning line: \(#line) file: \(#file) ")
return input
}
, которую мне нужно было сделать, это удалить одну из неиспользуемых перегрузки
func warnLog<T>(input:T? = nil) -> T? {
print("Warning line: \(#line) file: \(#file) ")
return input
}
В моем случае удаление каталога производных данных не помогло. По-видимому, у меня был файл, заблокированный другим процессом, потому что после закрытия нескольких окон терминала и emacs и завершения процесса реагирования на основе пакета, все было решено.
У меня была аналогичная проблема, и я обнаружил, что я случайно определил класс как свой собственный подкласс. Я не получил никаких предупреждений или ошибок, но компиляция застряла.
class mainClass : mainClass
{
...
}
Для меня полностью закрытие Xcode, а затем перезапуск проекта работал.
Это не решение исходного вопроса, я не верю, но это еще одна простая задача попробовать удаление файлов и папок и т. д. Подтвердите этот ответ для этой идеи.
Это случилось со мной. Если вы используете cocoapods, сделайте следующее:
Я столкнулся с этой проблемой в некоторых проектах с Xcode 9.3.1, и в моем случае проблема связана с некоторым быстрым кодом, который по какой-то причине Xcode не нравится. Эта проблема трудно решить, потому что трудно найти, какой файл вызывает проблему.
Когда у меня возникает эта проблема, я удаляю некоторые файлы из проекта Xcode (удаление ссылок), и я пытаюсь проверить, работает. Мой процесс для этого
В моем случае у меня было определение класса с реактивным расширением в том же файле, и по какой-то причине Xcode ему не нравится, я переместил реактивное расширение в другой файл и теперь индексирование отлично работает.
Еще одна вещь, которую вы пытаетесь решить, пытаясь решить проблемы с индексацией, и вы так далеко от страницы!
Попробуйте добавить этот флаг к настройкам сборки.
Xfrontend -warn-long-expression-type-checking=400
[/g0]
Это вызовет предупреждение, когда компилятор занимает много времени, чтобы вывести сложное выражение.
[/g1]
Это может привести к ошибке сборки, которая исчезнет после того, как вы найдете медленные выражения, а затем удалите флаг сборки.
Эта проблема произошла со мной, когда моя машина была вне пространства подкачки. Закрытие нескольких программ и вкладок браузера, и сборка неожиданно преуспела после 30 минут застревания на месте. Нет ничего общего с производными данными, заблокированными файлами и т. Д. На моей стороне.
У меня была эта точная проблема, она была вызвана литералом массива 20 элементов. Пришлось переключиться на другой синтаксис. Довольно глупо.
Была аналогичная проблема в Xcode 6.4. Индикатор выполнения показал, что «Индексирование» было «приостановлено». Попробовал удалить project.xcworkspace, а затем удалить Derived Data, как описано выше. Кажется, не помогло. Отмечая, что сообщения выше также предлагают исправление предупреждений, и поскольку я унаследовал этот огромный проект с 180 предупреждениями, я сказал себе: «Какого черта это выглядит как хороший день для исправления предупреждений». Когда я исправлял предупреждения, через полчаса я заметил, что индикатор прогресса «Индексация» увеличился с 10% до 20%. Через час это было на уровне 50%, затем на час до 80%, затем через полчаса это было сделано! Вывод: добавьте «взять длинный обед или сон» к вышеуказанным предложениям.
rm -rf ~/Library/Developer/Xcode/DerivedData
Я испытал ту же проблему для Xcode 7.0 beta. В моем случае значения «Профиль подготовки» и «Идентификатор продукта» в «Параметры сборки» отличались между PROJECT и TARGETS. Я установил для них одинаковые значения. И я также использовал те же значения для TARGETS «appName» и «appNameTest». Затем закрыл проект и снова открыл его. Это разрешило мое дело.
Мое дело: это не файл project.xcworkspace, это не папка Derived Data.
Я потратил много времени. Хуже, нет сообщения об ошибке. Никакой подсказки со стороны Xcode. Абсолютно потеряно.
Наконец, эта функция (с более чем 10 параметрами) отвечает.
func animationFrames(level: Float,
image: String,
frame0: String,
frame1: String,
frame2: String,
frame3: String,
frame4: String,
frame5: String,
frame6: String,
frame7: String,
frame8: String,
frame9: String,
frame10: String) {
}
Чтобы сходить с ума! Правда в том, что это вызывает беспокойство (потому что нет синтаксической ошибки или любого типа)
Для проблемы индексирования XCode 9.3 - Удалите XCode и установите снова с нуля. Работает для меня.
Закройте свой Xcode, закройте любой git-клиент (исходное дерево или терминал), если он открыт и, наконец, перезапустите проект.
Также прекратите выполнение приложения. если у вас есть другое приложение, работающее с вашим xcode, сначала остановите его, и вы продолжите индексирование.
При использовании Xcode 6 и он говорит
Ожидание make
blockquote>Возможно, экземпляр make уже запущен. Убейте процесс и индексирование. Глупо, но работал для меня.
com.apple.dt.SourceKitService
prcess. Затем XCode начнет индексировать снова вместо того, чтобы застрять. У меня была аналогичная проблема, в которой Xcode будет тратить много времени на индексацию и часто повредил бы проект, после чего мне пришлось принудительно завершить работу и перезапустить Xcode. Это было очень неприятно.
Тогда я заметил предупреждение в проекте о неправильном назначении self
в качестве делегата. Разумеется, в декларации класса отсутствовал протокол. Обратите внимание, что в образцовом коде OP есть аналогичное назначение (хотя из образца невозможно сообщить, правильно ли объявлен протокол):
leaderboardController.leaderboardDelegate == self;
После разрешения этого предупреждения (путем правильного объявления реализованного протокол), Xcode перестала ошибочно работать. Кроме того, я должен отметить, что проект выполнялся правильно, поскольку методы протокола были реализованы . Просто Xcode не смог подтвердить , что протокол должен фактически реализоваться классом.
Это ошибка Xcode (Xcode 8.2.1), и я сообщил об этом Apple, это произойдет, когда у вас большой литерал словаря или вложенный словарь. Вы должны разбить свой словарь на более мелкие части и добавить их с помощью метода добавления, пока Apple не исправит ошибку.
Я исправил это, просто удалив приложение с моего устройства и перестроил.
Удерживать alt> Продукт> Очистить папку сборки
Я тоже столкнулся с проблемой. Я заметил, что дважды открыл тот же проект.
So QuitXCode> Откройте ваш проект и убедитесь, что открыт только один экземпляр> Очистить> Папка CleanBuild в некоторых случаях> build.
Он должен работать
Я закрыл свой xCode и снова открыл проект, решив мою проблему.
Для меня я сделал глупую ошибку. Я пишу класс следующим образом:
class A: A {
.......
}
Класс наследует сам, что вызывает замораживание. Нет подсказки сообщения от Xcode.
Для меня причина в том, что я одновременно открыл один и тот же файл в обоих редакторах Primary Editor и Assistant Editor . Как только я закрыл помощника редактора, он прошел. (Версия Xcode 7.2.1)