Затмение Дескриптор развертывания модуля 'xxx.war' не может быть загружен или найден
В Eclipse было несколько подобных вопросов, связанных с этой ошибкой:
Дескриптор развертывания модуля 'xxx.war' не может быть загружен или найден.
Это очень общая ошибка, и после поиска в Интернете у меня появилось несколько разных причин и решений. Я попытаюсь перечислить их все здесь, чтобы другим не пришлось проходить через то же, что и я.
Если у кого-то возникли другие причины и решения, перечислите их здесь. знак равно
(Модераторы, пожалуйста, подождите, пока я поставлю ответ, прежде чем судить об этом вопросе)
4 ответа
Причина: перемещенные папки
Решение: "Щелкните правой кнопкой мыши свой динамический веб-проект -> Свойства -> Сборка развертывания. В Сборке веб-развертывания измените структуру пакета, чтобы отразить ваши изменения. Это должно работать". ( Дескриптор развертывания Eclipse не найден)
Причина: Модернизированный RAD/Eclipse
Решение A: Добавьте и удалите соответствующий модуль в application.xml ( http://www-01.ibm.com/support/docview.wss?uid=swg21297984)
Решение B. Зайдите в проводник и отредактируйте файл.settings/org.eclipse.wst.common.component и убедитесь, что в нем указан зависимый модуль ( https://www.ibm.com/developerworks/community/forums/html/topic?id=77777777-0000-0000-0000-000014042762)
Причина: в зависимом проекте есть ошибки
Решение: Если в зависимом проекте есть ошибки, он не будет встроен в WAR, поэтому на него нельзя ссылаться.
Причина: отсутствует web.xml
Решение: это сложно. В проекте без web.xml ошибок не будет (по крайней мере, для меня). Но с файлом WEB-INF/web.xml его нельзя рассматривать как правильный файл войны ( http://en.wikipedia.org/wiki/WAR_file_format_(Sun)). Добавление web.xml решило проблему.
Причина: неправильная структура
Решение: убедитесь, что файл war включен в файл ear. ( https://community.jboss.org/thread/162761?start=0&tstart=0&_sscc=t)
Причина: в правильных гранях
Решение: "Вы должны иметь следующие аспекты:
- Динамический веб-модуль
- Джава
- Websphere Web (Con-существование)
- Websphere Web (расширенный)
Кроме того, в вашем пути сборки -> библиотеки вы должны иметь следующие записи:
- EAR библиотеки
- Системная библиотека JRE [IBM JDK]
- Библиотеки веб-приложений
- Сервер приложений Websphere [your-ver] "( http://stubbisms.wordpress.com/2007/11/26/deployment-descriptor-of-the-module-yourappplicationwar-cannot-be-loaded/)
Причина: общая проблема затмения
Решение: Время от времени затмение просто затихает по разным не относящимся к делу причинам. Чтобы это исправить, закройте проект, откройте заново, очистите и перекомпилируйте. Или даже попробуйте в новом рабочем пространстве, если ничего не помогает. ( http://stubbisms.wordpress.com/2007/11/26/deployment-descriptor-of-the-module-yourappplicationwar-cannot-be-loaded/)
Пришлось удалить EAR с WS и диска, но сохранить соответствующие веб-проекты, а затем снова проверить EAR. Настройки развертывания EAR повреждены. Для тех, кто имеет подобную ситуацию.
Для моего случая я генерировал "application.xml" с использованием Maven POM, и решением этой проблемы было изменение конфигурации maven-ear-plugin, как показано ниже:
....
<artifactId>maven-ear-plugin</artifactId>
<version>2.10.1</version>
<configuration>
<version>7</version>
<defaultLibBundleDir>lib</defaultLibBundleDir>
<applicationName>MyCustom-ear</applicationName>
<fileNameMapping>no-version</fileNameMapping>
<modules>
....
После изменения выше удалите проект или модуль из Eclipse (но не удаляйте с диска). Перейдите в папку проекта из файлового браузера (например, Windows Explorer) и удалите.settings и целевые папки и файл.project из проекта или модуля и повторно импортируйте проект или модуль в Eclipse, и он должен работать.
У меня был только что клонированный проект из git, я создал папку внутри своего проекта EAR. И я смог добавить свой проект (ресурс EAR) на сервер Liberty.
Добавление вручную
EarContent
папка, которая является пустой папкой для решения моей проблемы.