У меня есть эта запутанная ситуация. Мое веб-приложение maven java начинается, когда я запускаю mvn clean install org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:run-war
с консоли. Но когда я настроить Tomcat на затмении и запустить сервер я получаю следующее исключение:Tomcat не запускается на затмении
Caused by:javax.persistence.PersistenceException[PersistenceUnit: persistence-unit] class or package not found
.....
Caused by: java.lang.ClassNotFoundException: com.my.package.MyClass
......
Мой persistence.xml:
<?xml version="1.0" encoding="UTF-8"?>
<persistence>
<persistence-unit name="persistence-unit">
<class>com.my.package.MyClass</class>
<class>com.my.package.MyClassTwo</class>
<class>com.my.package.MyClassThree</class>
<properties>
<property name="hibernate.hbm2ddl.auto" value="update"/>
</properties>
</persistence-unit>
</persistence>
Теперь все классы, определенные в persistence.xml существует и может быть достигнут используя ctrl + click в файле persistence.xml, поэтому ясно, что имена пакетов и классов на 100% правильны. Поиск arround я попробовал решение по адресу: https://stackoverflow.com/a/18073429. Когда я закомментируй тег класса я не получаю никаких исключений при запуске, но приложение на самом деле не начать, как я получаю differrent исключения при попытке доступа к приложению:
javax.servlet.ServletException: Expression Error: Named Object: entityConverter not found.
javax.faces.webapp.FacesServlet.service(FacesServlet.java:659)
Это entityConverter помечаются @FacesConverter(value = "entityConverter")
, который надлежащее обращение с таким конвертером, поэтому я не вижу здесь проблемы.
Теперь основная путаница в том, что приложение запускается и отлично работает на eclipse, используя другой компьютер с точно таким же экземпляром tomcat (скопированный tomcat, скопированные настройки и т. Д.), И это несколько раз, случайным образом работал на машине, где я получаю эти исключения, но я обновил проект alt + f5 на затмении и снова перестал работать. Никакие настройки не изменяются между двумя машинами (построение с использованием того же репозитория, такая же ревизия). Любые идеи были бы оценены.
Вы используете JPA для постоянного провайдера? –
Если его прогоны в командной строке cmd не отображаются в eclipse, тогда проблема пути сборки eclipse. Запустите 'mvn eclipse: eclipse', затем обновите проект eclipse, затем попробуйте. –
Попробуйте новое затмение, а также новое рабочее пространство. (Заставляет ли eclipse импортировать проект в качестве проекта maven?) – sura2k