Eclipse (с плагинами J2EE) не будет создавать файлы классов для вывода каталога

У меня была эта проблема с несколькими версиями Eclipse. В некоторых сценариях Eclipse не выводит файлы класса байт-кода в выходной каталог. Я сделаю сборку и чистую. Я работаю с сервером Tomcat. Я останавливаю сервер, и Eclipse не будет делать сборки.

Мой выходной каталог: project/WebContent/WEB-INF/classes

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

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

Информация о версии: Galileo Eclipse Java EE IDE для веб-разработчиков. Идентификатор сборки: 20100218-1602

Также установлен плагин mvn m2eclipse.

Ответ 1

Это обычно происходит, если в пути сборки проекта отсутствуют некоторые требуемые библиотеки. Также убедитесь, что сборка автоматически проверена [Project > Build Automatically]. Пожалуйста, напишите, если вы все еще сталкиваетесь с проблемой.

Ответ 2

У меня была та же проблема. Я проверил "Build Automatically" и ожидал файл класса в моем каталоге project/bin, но он был пуст. Что сработало для меня, было снятие флажка "Build Automatically" в меню Project, Project → Clean, а затем Project → Build All. Теперь все файлы .java были скомпилированы, и я снова проверил "Build Automatically" .

Ответ 3

У меня есть еще один простой вопрос, но я не знаю, как комментировать вопрос напрямую, не добавляя ответа.

Запускаете ли вы Eclipse/m2eclipse в Windows? Если это так, у вас могут возникнуть проблемы с ошибками, возникающими во время "чистого" этапа жизненного цикла. Если вы добавите следующее в элемент < profiles/" > в файле ~/.m2/settings.xml, вы должны избегать такого прерывания сборки:


<profile>
        <id>windows-nocleanerrors</id>
        <activation>
            <os>
                <family>Windows</family>
            </os>
        </activation>
        <properties>
            <maven.clean.failOnError>false</maven.clean.failOnError>
        </properties>
</profile>