我正在尝试使用我创建的REST API部署后端应用程序。当我从控制台运行时,程序运行得很好,但是当我尝试创建一个jar文件并执行它时,程序运行得很好。当我尝试运行从maven项目创建的jar文件时遇到很多错误,但是由于此Hibernate错误,我无法执行jar文件。我尝试将依赖项添加到pom.xml文件中,但是似乎没有任何作用。
我删除了Hibernate-core文件夹中的重复文件,并且已修复了一些错误,但仍然出现存档异常错误。 错误消息
log4j: Adding appender named [consoleAppender] to category [root].
18 Jul 2019 12:05:21 INFO Version - HV000001: Hibernate Validator 6.0.17.Final
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.1.6.RELEASE)
18 Jul 2019 12:05:22 INFO MainRun - Starting MainRun v4.0.0 on LAPTOP-SBPKOCKV with PID 2744 (C:\Internship2019\examples-master\ctakes-web-client\target\ctakes-web-client.jar started by user in C:\Internship2019\examples-master\ctakes-web-client\target)
18 Jul 2019 12:05:22 INFO MainRun - No active profile set, falling back to default profiles: default
18 Jul 2019 12:05:23 INFO TomcatWebServer - Tomcat initialized with port(s): 8080 (http)
Jul 18, 2019 12:05:23 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service [Tomcat]
Jul 18, 2019 12:05:23 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet engine: [Apache Tomcat/9.0.21]
Jul 18, 2019 12:05:24 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring embedded WebApplicationContext
18 Jul 2019 12:05:24 INFO ContextLoader - Root WebApplicationContext: initialization completed in 1781 ms
18 Jul 2019 12:05:24 INFO EmbeddedDatabaseFactory - Starting embedded database: url='jdbc:hsqldb:mem:testdb', username='sa'
18 Jul 2019 12:05:24 INFO LogHelper - HHH000204: Processing PersistenceUnitInfo [
name: default
...]
18 Jul 2019 12:05:24 INFO Version - HHH000412: Hibernate Core {5.3.10.Final}
18 Jul 2019 12:05:24 INFO Environment - HHH000206: hibernate.properties not found
18 Jul 2019 12:05:24 INFO Version - HCANN000001: Hibernate Commons Annotations {5.0.4.Final}
18 Jul 2019 12:05:24 WARN AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.boot.archive.spi.ArchiveException: Could not build ClassFile
18 Jul 2019 12:05:24 INFO EmbeddedDatabaseFactory - Shutting down embedded database: url='jdbc:hsqldb:mem:testdb'
Jul 18, 2019 12:05:24 PM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service [Tomcat]
18 Jul 2019 12:05:24 INFO ConditionEvaluationReportLoggingListener -
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
18 Jul 2019 12:05:24 ERROR SpringApplication - Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: Invocation of init method failed; nested exception is org.hibernate.boot.archive.spi.ArchiveException: Could not build ClassFile
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1778)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:593)
<repository>
<id>apache.snapshots</id>
<name>Apache Development Snapshot Repository</name>
<url>https://repository.apache.org/content/repositories/snapshots/</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>org.eclipse.jetty</groupId>
<artifactId>jetty-server</artifactId>
<version>9.2.10.v20150310</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
<version>2.1.6.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.jayway.jsonpath</groupId>
<artifactId>json-path</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.3.0</version>
</dependency>
</dependencies>
<build>
<finalName>ctakes-web-client</finalName>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.4</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<compilerArgument>-Xlint</compilerArgument>
</configuration>
</plugin>
<plugin>
<!-- Build an executable JAR -->
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.4</version>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix>lib/</classpathPrefix>
<mainClass>org.apache.ctakes.web.client.servlet.MainRun</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
答案 0 :(得分:0)
检查您的依赖关系树(确保使用详细命令显示重复项)。
mvn dependency:tree -Dverbose
然后,排除任何不在休眠状态的 javassist 。例如:
<dependency>
<groupId>xxx.xxxxxxxx</groupId>
<artifactId>xxxxxxx</artifactId>
<version>${version}</version>
<exclusions>
<exclusion>
<artifactId>javassist</artifactId>
<groupId>org.javassist</groupId>
</exclusion>
</exclusions>
其中: 您在依赖关系树上标识的groupId中的“ xxx.xxxxxxxx”。 您在依赖关系树上标识的artifactId中的“ xxxxxxx”。