Убедитесь, что вы используете как минимум Eclipse IDE для разработчиков Java EE (с EE). Он содержит средства разработки для создания динамических веб-проектов и легко интегрирует servletcontainers (эти инструменты являются частью Web Tools Platform, WTP). Если у вас уже есть Eclipse IDE для Java (без EE) и вручную установлены некоторые связанные с EE плагины, то, скорее всего, это было сделано неправильно. Вам лучше всего удалить его и захватить настоящую Eclipse IDE для Java EE.
Вам также необходимо убедиться, что на вашем компьютере уже установлен сервлетконтейнер, который реализует, по крайней мере, ту же версию API Servlet, что и servletcontainer в рабочей среде, например Apache Tomcat , Oracle GlassFish , JBoss AS / WildFly и т. д. Обычно , просто загрузить ZIP-файл и извлечь его достаточно. В случае Tomcat, do not загружает формат EXE, это только для производственных сред Windows. См. Также a.o. Несколько портов (8005, 8080, 8009), требуемых Tomcat Server на localhost, уже используются .
Сервлетконтейнер представляет собой конкретную реализацию API Servlet. Обратите внимание, что загрузка Java EE SDK на Oracle.com в основном содержит GlassFish. Так что если вы уже загрузили Java EE SDK, то у вас в основном уже есть GlassFish. Также обратите внимание, что, например, GlassFish и JBoss AS / WildFly являются больше , чем просто servletcontainer, они также поддерживают JSF, EJB, JPA и все другие Java EE fanciness. См. Также a.o. Что такое Java EE?
После установки Eclipse для Java EE и servletcontainer на вашем компьютере выполните следующие шаги в Eclipse:
В любом случае вам следует не нужно входить в свойство Build Path проекта. Прежде всего вы никогда не будете вручную копировать / загружать / перемещать / включать отдельные библиотеки, специфичные для сервлетконтейнеров, такие как servlet-api.jar
, jsp-api.jar
, el-api.jar
, j2ee.jar
, javaee.jar
и т. Д. Это приведет только к будущей переносимости, совместимость, путь к классам и проблемы с ремонтопригодностью, поскольку ваш webapp не будет работать, когда он будет развернут в servletcontainer другой версии / версии, чем изначально полученных из этих библиотек.
Если вы используете Maven, вы необходимо убедиться, что библиотеки, специфичные для сервлетаконтейнера, которые уже предоставлены целевой средой выполнения, отмечены как
.
Вот некоторые типичные исключения, которые вы можете получить, когда вы засоряете /WEB-INF/lib
или даже /JRE/lib
, /JRE/lib/ext
и т. д. с библиотеками, специфичными для servletcontainer, в неосторожной попытке исправить ошибки компиляции:
Используйте фильтры adelay и amix или amerge :
ffmpeg -i main.mp3 -i secondary.mp3 -filter_complex "[1:a]adelay=20000|20000[2nd];[0:a][2nd]amix=inputs=2" out.mp3