Я создал манекен Maven проект, который обертывает CMU Sphinx4 в сервлете. Зависимости: sphinx4-core:1.0-SNAPSHOT
и sphinx4-data:1.0-SNAPSHOT
. При работе на местном уровне (Eclipse), он прекрасно работает, но потом развернуть его на AWS Elastic Beanstalk, и я получаю следующее исключение:Sphinx4 разбивается на AWS Elastic Beanstalk, работает на dev машине
Property exception component:'null' property:'null' - java.io.FileNotFoundException: JAR entry edu/cmu/sphinx/models/en-us/en-us//means not found in /var/lib/tomcat8/webapps/ROOT/WEB-INF/lib/sphinx4-data-1.0-SNAPSHOT.jar
edu.cmu.sphinx.util.props.PropertyException: java.io.FileNotFoundException: JAR entry edu/cmu/sphinx/models/en-us/en-us//means not found in /var/lib/tomcat8/webapps/ROOT/WEB-INF/lib/sphinx4-data-1.0-SNAPSHOT.jar
Caused by: java.io.FileNotFoundException: JAR entry edu/cmu/sphinx/models/en-us/en-us//means not found in /var/lib/tomcat8/webapps/ROOT/WEB-INF/lib/sphinx4-data-1.0-SNAPSHOT.jar
Я подозреваю, это что двойной слеш там, но я не могу объяснить, почему это не происходят на моей машине dev (OSX).
спасибо!
Edit:
Моя DEV машина: OSX работает Eclipse, Luna с AWS плагин. Я использую проект J2EE с одним сервлетом и получаю JAR Sphinx (данные ядра &) через Maven. Когда я запускаю сервер в своей машине dev (порт 8080), я передаю его WAV-файл через сообщение POST, файл загружается правильно, и я получаю анализ в виде текстового ответа.
Машина для мойки: AWS Эластичный бобовый стебель. Я использую плагин AWS. Когда я комментирую часть кода Sphinx, сервер работает (т. Е. Получает файл и возвращает его мне и т. Д.)
Если проблема не в двойной косой черте, тогда JAR не обрабатываются правильно , Это имело бы смысл, так как файл, который он ищет, не является class
, поэтому в части JAR для приготовления пищи Maven должно быть сказано, как включать файлы ресурсов в JAR, которые он делает при развертывании.
Любая идея, как это сделать?
Еще раз спасибо!
Когда вы говорите «работает локально», что вы имеете в виду? Как вы запустили его локально? Как вы применили его к beanstalk? –
Двойной косой черт, скорее всего, не проблема, так как POSIX рассматривает две черты как одну. –
FYI. Убедитесь, что при упаковке приложения в виде банки в Eclipse вы используете *** Copy Required Libraries в подпапку рядом с опцией egnerated jar ***. В противном случае вы не сможете найти ресурс/Ошибка файла не найдена. –