Волшебная ошибка IDEA: процесс завершен, код выхода -1073741819 (0xC0000005)

Java IntelliJ IDEA

Так как статья, которую я собирался написать вчера, не была закончена, сегодня утром я проснулся «естественным образом» в 4:30 утра, у меня было что-то на уме, и я не мог спать спокойно. Умывшись, я включил компьютер и сел прямо, делая вид, что собираюсь драться, чтобы больше не тянуть.

Статья, которая будет написана, включает в себя серию кодов.Вводный пример Undertow размещен здесь для всеобщего обозрения.

public class UndertowTest {
    public static void main(final String[] args) {
        Undertow server = Undertow.builder()
                .addHttpListener(8080, "localhost")
                .setHandler(new HttpHandler() {
                    @Override
                    public void handleRequest(final HttpServerExchange exchange) throws Exception {
                        exchange.getResponseHeaders().put(Headers.CONTENT_TYPE, "text/plain");
                        exchange.getResponseSender().send("Hello World");
                    }
                }).build();
        server.start();
    }
}

Undertow — это высокопроизводительное программное обеспечение веб-сервера на основе NIO, разработанное известной компанией Red Hat.Не требуется отдельная установка программного обеспечения.Для запуска веб-службы в приложении Java требуется всего несколько строк кода. как приведенный выше код сегмента.

Необходимым условием является то, что вы представили зависимость Undertow в файле pom.xml.

<dependency>
    <groupId>io.undertow</groupId>
    <artifactId>undertow-core</artifactId>
    <version>2.0.28.Final</version>
</dependency>

Неожиданно после запуска кода в IDEA происходит аварийное завершение работы!

Нет сообщения об ошибке, что очень удручает. С именем хоста localhost проблем нет, и порт 8080 не занят, но основной метод заканчивается напрямую без каких-либо внешних факторов. Введите в адресной строке браузераhttp://localhost:8080Естественно, «Hello World» не может быть отображена.

Оглядываясь назад на вывод на панели «Выполнить», единственное, что меня озадачивает, это эта строка:

Процесс завершился с кодом выхода -1073741819 (0xC0000005)

Обычно вывод выполнения программы выглядит следующим образом:

Процесс завершился с кодом выхода 0

Код выхода 0, значит программа завершается нормально, код выхода 1073741819, что это значит?

Это определенно не нормально. Первая причина, о которой я подумал, заключалась в том, что я неправильно написал код? Итак, я заглянул на официальный сайт Undertow, проверил слово за словом и даже пошел дальше сравнения для сравнения, но не нашел ничего подозрительного.

Подбрасывания достаточно, так что я должен пойти в Google Dafa:

Я менял разные ключевые слова, проверял разные статьи, но подходящего решения не нашел. Гугл был безрезультатным, думал попробовать до определенной степени, и нашел игру, которая на совесть.

Поисковые системы ненадежны, поэтому полагаться можно только на себя. Поэтому я написал этот код:

public class TestClose {
    public static void main(String[] args) {
        try {
            Thread.sleep(10000000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
}

Результаты были ошеломляющими. Я несколько раз протирал глаза и даже капал глазные капли, но результат был нештатный выход, а код ошибки был такой же, как и у предыдущего Undertow.

Что ты делаешь, этоThread.sleep(10000000)Спящий Дафа, он также может закончиться через одну секунду, это не должно быть неправильно написанным примером кода Undertow, но IDEA действует как демон.

До сих пор я думаю о Затмении, которое было помещено в холодный дворец. Тот же код, процесс не заканчивается сразу.

Пример кода Undertow тоже хорош, программа не завершается сразу.

Введите в браузереhttp://localhost:8080также можно получить доступ в обычном режиме.

После сравнения проблема совершенно очевидна: это ИДЕЯ, которая, должно быть, представляет собой расстроенный нерв. Поэтому я изменил ключевые слова поиска Google, и результаты следующие.

Конечно, некоторые коллеги сталкивались с подобными проблемами, но причиной, упомянутой в статье, оказался корявый перевод Kingsoft, что слишком нелепо, не так ли?

Хотя это немного глупо, но это действительно стоит попробовать.В конце концов, горы и реки исчерпаны.Кроме того, на моем компьютере действительно установлен Kingsoft PowerWord, и он включен.

Тогда бросай и пробуй, результат. . . . . . . . . . Действительно полезно.

На этот раз процесс не завершился автоматически, что это за магическая операция? Впервые в жизни я начал сомневаться в науке!

Так как это имеет какое-то отношение к Kingsoft PowerWord, то у меня мозг раскрылся.Это из-за того, что я установил китайский плагин? Поэтому я отключил китайский плагин IDEA и открыл Kingsoft Powerword перед перезапуском.

Получается, что это не имеет значения, и процесс добровольно завершается.

Поэтому мне снова пришлось уйти из Kingsoft. Неожиданно, когда я щелкнул маленькую иконку «Выполнить», чтобы снова запустить программу, IDEA вылетела. Кажется, что между ними действительно есть невыразимая тайна, и конкретная причина неизвестна.

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

Опыт 1: Сохраняйте спокойствие и не раздражайтесь Когда психика вышла из равновесия, легко ударить мышью, ударить по клавиатуре, а если удар сломался, приходится покупать новый.

Опыт 2: Сначала найдите причину в собственном коде.Иногда будут отклонения при копировании и вставке.В это время лучше всего сравнить его с исходником. Если вы не можете найти его невооруженным глазом, используйте надежный инструмент сравнения.

Урок 3: Спросите Google, а не в определенной степени. В эти дни я часто слышу, как некоторые мелкие партнеры жалуются, что компания не разрешает доступ в Интернет, и действительно невозможно начать при возникновении проблем, могу только сказать, что такая компания действительно закрыта для страны.

Урок 4: Попробуйте в другом окружении. Один и тот же код в разных средах может иметь разные решения после запуска. Если ошибка в IDEA, попробуйте в Eclipse, если ошибка в Windows, попробуйте в Linux, если проблема в вашей собственной среде, попробуйте в среде коллеги.

Урок 5: Измените ключевые слова при поиске, это действительно «деревня в темноте и свете».

Урок 6: Повторите вышеописанное.

Спасибо

Что ж, мои дорогие читатели, на этом все. После прочтения, когда интервьюер спросит, является ли Java передачей по значению или по ссылке, вам не нужно беспокоиться о том, что вас обманут. Я Silent King Er, интересный программист.Оригинальность непроста, не просите пустой билет, пожалуйста, поставьте лайк этой статье, что будет моей сильнейшей мотивацией писать больше качественных статей.

Если вы считаете, что статья полезна для вас, пожалуйста, выполните поиск по запросу "Тихий король 2"Прочтите это в первый раз, ответьте [666] Есть также обучающие видео высокой четкости 500G (по категориям), которые я тщательно подготовил для вас. эта статьяGitHubОн был включен, и есть полные тестовые площадки для интервью на крупных заводах Добро пожаловать в Star.