Java Spring升级5.3.5导致ClassCastException AttributeConverterTypeAdapter无法强制转换为org.hibernate.type.VersionType
我正在尝试用hibernate版本5.4.30.Final将Spring升级到5.3.5使用的依赖项是:Java Spring升级5.3.5导致ClassCastException AttributeConverterTypeAdapter无法强制转换为org.hibernate.type.VersionType,java,spring,spring-boot,hibernate,jpa,Java,Spring,Spring Boot,Hibernate,Jpa,我正在尝试用hibernate版本5.4.30.Final将Spring升级到5.3.5使用的依赖项是: ----Attempt1---------- <m.spring>5.1.6.RELEASE</m.spring> <m.hibernate>5.1.6.Final</m.hibernate> -----> x --Attempt2------------------------------- <spring-framework-
----Attempt1----------
<m.spring>5.1.6.RELEASE</m.spring>
<m.hibernate>5.1.6.Final</m.hibernate> -----> x
--Attempt2-------------------------------
<spring-framework-bom.version>5.2.2.RELEASE</spring-framework-bom.version>
<m.hibernate>5.1.6.Final</m.hibernate> ---------------> x
---Attempt3------------------------------
<spring-framework-bom.version>5.3.5</spring-framework-bom.version>
<m.hibernate>5.4.30.Final</m.hibernate>
--Attempt4-----------------------------
<m.spring>5.3.0</m.spring>
<m.hibernate>5.2.0.Final</m.hibernate>
<m.hibernate.em>5.2.1.Final</m.hibernate.em>
---------------------------------------
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${m.spring}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${m.spring}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>${m.spring}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${m.spring}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${m.spring}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>${m.hibernate}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>${m.hibernate.em}</version>
</dependency>
2021-04-15:18-51-35.0208 WARN svc:application org.hibernate.cfg.AnnotationBinder#bindClass:541 - HHH000503: A class should not be annotated with both @Inheritance and @MappedSuperclass. @Inheritance will be ignored for: com.covisint.core.http.service.core.AbstractResource. [||||]
2021-04-15:18-51-35.0220 WARN svc:application org.hibernate.cfg.AnnotationBinder#bindClass:541 - HHH000503: A class should not be annotated with both @Inheritance and @MappedSuperclass. @Inheritance will be ignored for: com.covisint.core.http.service.core.AbstractRealmScopedResource. [||||]
2021-04-15:18-51-35.0414 WARN svc:application org.hibernate.type.descriptor.java.JavaTypeDescriptorRegistry#checkEqualsAndHashCode:144 - HHH000481: Encountered Java type [class java.lang.Object] for which we could not locate a JavaTypeDescriptor and which does not appear to implement equals and/or hashCode. This can lead to significant performance problems when performing equality/dirty checking involving this Java type. Consider registering a custom JavaTypeDescriptor or at least implementing equals/hashCode. [||||]
2021-04-15:18-51-35.0448 WARN svc:application org.hibernate.type.descriptor.java.JavaTypeDescriptorRegistry#checkEqualsAndHashCode:144 - HHH000481: Encountered Java type [class java.lang.Object] for which we could not locate a JavaTypeDescriptor and which does not appear to implement equals and/or hashCode. This can lead to significant performance problems when performing equality/dirty checking involving this Java type. Consider registering a custom JavaTypeDescriptor or at least implementing equals/hashCode. [||||]
2021-04-15:18-51-35.0809 ERROR svc:application org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean#buildNativeEntityManagerFactory:426 - Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate persister org.hibernate.persister.entity.SingleTableEntityPersister [||||]
2021-04-15:18-51-35.0812 WARN svc:application org.springframework.web.context.support.XmlWebApplicationContext#refresh:591 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'emf' defined in URL [file:/C:/Users/anujs/Downloads/application_wsp/application/webapp/target/classes/spring-persistence.xml]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate persister org.hibernate.persister.entity.SingleTableEntityPersister [||||]
2021-04-15:18-51-35.0812 WARN svc:application org.springframework.web.context.support.XmlWebApplicationContext#refresh:591 - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'emf' defined in URL [file:/C:/Users/anujs/Downloads/application_wsp/application/webapp/target/classes/spring-persistence.xml]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate persister org.hibernate.persister.entity.SingleTableEntityPersister [||||]
2021-04-15:18-51-35.0823 ERROR svc:application org.springframework.web.context.ContextLoader#initWebApplicationContext:313 - Context initialization failed [||||]
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'emf' defined in URL [file:/C:/Users/anujs/Downloads/application_wsp/application/webapp/target/classes/spring-persistence.xml]: Invocation of init method failed; nested exception is javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate persister org.hibernate.persister.entity.SingleTableEntityPersister
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1786)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:602)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:524)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:335)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:333)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:208)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1154)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:908)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:583)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:401)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:292)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:103)
at org.eclipse.jetty.server.handler.ContextHandler.callContextInitialized(ContextHandler.java:959)
at org.eclipse.jetty.servlet.ServletContextHandler.callContextInitialized(ServletContextHandler.java:553)
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:924)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:365)
at org.eclipse.jetty.webapp.WebAppContext.startWebapp(WebAppContext.java:1497)
at org.eclipse.jetty.maven.plugin.JettyWebAppContext.startWebapp(JettyWebAppContext.java:360)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1459)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:854)
at org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:278)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:545)
at org.eclipse.jetty.maven.plugin.JettyWebAppContext.doStart(JettyWebAppContext.java:428)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:119)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:119)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:167)
at org.eclipse.jetty.server.Server.start(Server.java:418)
at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:113)
at org.eclipse.jetty.server.Server.doStart(Server.java:382)
at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
at org.eclipse.jetty.maven.plugin.AbstractJettyMojo.startJetty(AbstractJettyMojo.java:477)
at org.eclipse.jetty.maven.plugin.AbstractJettyMojo.execute(AbstractJettyMojo.java:343)
at org.eclipse.jetty.maven.plugin.JettyRunMojo.execute(JettyRunMojo.java:171)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:956)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:192)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347)
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate persister org.hibernate.persister.entity.SingleTableEntityPersister
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:421)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:396)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:341)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1845)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1782)
... 63 more
Caused by: org.hibernate.MappingException: Could not instantiate persister org.hibernate.persister.entity.SingleTableEntityPersister
at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:112)
at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:77)
at org.hibernate.metamodel.internal.MetamodelImpl.initialize(MetamodelImpl.java:181)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:303)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:468)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1259)
at org.hibernate.jpa.HibernatePersistenceProvider.createContainerEntityManagerFactory(HibernatePersistenceProvider.java:141)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:409)
... 67 more
Caused by: java.lang.ClassCastException: org.hibernate.type.descriptor.converter.AttributeConverterTypeAdapter cannot be cast to org.hibernate.type.VersionType
at org.hibernate.tuple.PropertyFactory.buildVersionProperty(PropertyFactory.java:111)
at org.hibernate.tuple.entity.EntityMetamodel.<init>(EntityMetamodel.java:222)
at org.hibernate.persister.entity.AbstractEntityPersister.<init>(AbstractEntityPersister.java:609)
at org.hibernate.persister.entity.SingleTableEntityPersister.<init>(SingleTableEntityPersister.java:128)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at org.hibernate.persister.internal.PersisterFactoryImpl.createEntityPersister(PersisterFactoryImpl.java:96)
... 75 more
对于初学者来说,
hibernate core
和hibernate entitymanager
版本必须匹配,否则可能会遇到兼容性问题。您还应该注意关于@MappedSuperclass
/@heritation
的警告,它们在同一类上不可用。选择一个。@M.Deinum感谢您指出,您的两个建议都已实现,但得到了相同的Classcastexception。您只发布了依赖项的一个片段,因此可能还有另一个依赖项是罪魁祸首。但您只发布了几条。@M.Deinum当然,我现在用hibernate实体持有者模块的依赖关系树更新了这个问题(它是一个多模块项目)
/**
* Base class for {@link Resource} implementations.
*
* @param <T> the type of resource
*/
@MappedSuperclass
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class AbstractResource<T extends Resource> implements Resource {
/** Serial version UID. */
private static final long serialVersionUID = -9220615487126078224L;
/** Unique ID for this resource. */
@Searchable
@Id
@Column(name = "ID", nullable = false, length = 64, updatable = false, unique = true)
private String id;
/** Current version of this resource record. */
@Version
@Column(name = "VERSION", nullable = false)
private Long version;
/** Creator of this version of this resource record. */
@Column(name = "CREATOR", nullable = false, length = 64)
private String creator;
/** Creation instant, in milliseconds since the epoch, of this version of this resource record. */
@Sortable
@Searchable
@Column(name = "CREATION_INSTANT", nullable = false, scale = 10)
private long creation;
/** The ID of the application the creator used to create this resource. */
@Column(name = "CREATOR_APPLICATION_ID", nullable = false, length = 64)
private String creatorApplicationId;
/**
* Default Constructor.
*
*/
public AbstractResource() {
// Initialize the creation instant to current System.currentTime
setCreationInstant(System.currentTimeMillis());
}
/** {@inheritDoc} */
@Nullable
public final String getId() {
return id;
}
/**
* Sets the ID for this resource. This ID should be unique in time and space (i.e., no other process running on any
* other machine at any time should generate the same ID). It is strongly recommended to use a type 4 UUID (see
* {@link java.util.UUID#randomUUID()}) to generate IDs.
*
* @param newId ID for this resource
*
* @return this object
*/
public final T setId(@Nullable final String newId) {
id = newId;
return (T) this;
}
/** {@inheritDoc} */
@Nullable
public final Long getVersion() {
if (version == 0L) {
return 0L;
}
return version;
}
/**
* Sets the current version for this resource.
*
* @param newVersion the current version for this resource
*
* @return this object
*/
public final Long setVersion(@Nullable final Long newVersion) {
//version = Longs.tryParse(StringSupport.trimOrEmpty(newVersion));
if (newVersion == 0L) {
// We have a non-numeric version. Have to be forgiving here for old riak-stored resources.
return 1L;
}
return newVersion;
}
/** {@inheritDoc} */
@Nullable
public final String getCreator() {
return creator;
}
/**
* Sets the creator of the current version of this resource.
*
* @param newCreator creator of the current version of this resource
*
* @return this object
*/
public final T setCreator(@Nonnull @NotEmpty final String newCreator) {
creator = newCreator;
return (T) this;
}
/** {@inheritDoc} */
public final long getCreationInstant() {
return creation;
}
/**
* Sets the instant, in milliseconds since the epoch, that this version of this resource was created.
*
* @param instant instant that this version of this resource was created
*
* @return this object
*/
public final T setCreationInstant(final long instant) {
creation = instant;
return (T) this;
}
/** {@inheritDoc} */
@Nullable
public final String getCreatorApplicationId() {
return creatorApplicationId;
}
/**
* Sets the ID of the application the creator used to create this resource.
*
* @param creatorId ID of the application the creator used to create this resource
*
* @return this object
*/
public final T setCreatorApplicationId(@Nonnull @NotEmpty String creatorId) {
creatorApplicationId = creatorId;
return (T) this;
}
/**
* Helper method that provides a hash code over a resource's identity fields: id, version.
*
* @return the hash code based on the resource's identity fields
*/
protected final int getResourceIdentityHashCode() {
return Objects.hashCode(getId(), getVersion());
}
/**
* Helper method that determines if an object is equal to this resources based on its identity fields: id, version.
*
* @param resourceType the type of the resource
* @param obj the object to check for equality
*
* @return true if the objects are equality, false otherwise
*/
protected final boolean isResourceIdentityEqual(Class<T> resourceType, Object obj) {
if (obj == null) {
return false;
}
if (obj == this) {
return true;
}
if (!resourceType.isInstance(obj)) {
return false;
}
final T other = (T) obj;
return Objects.equal(getId(), other.getId()) && Objects.equal(getVersion(), other.getVersion());
}
/**
* Adds the fields of this class to the helper.
*
* @param helper helper to which the fields will be added
*
* @return the populated helper
*/
protected ToStringHelper populateToStringHelper(ToStringHelper helper) {
return helper.add("id", id).add("version", version).add("creator", creator).add("creation", creation)
.add("creatorApplicationId", creatorApplicationId);
}
}
[INFO] Building Application HTTP Service Core Module 1.10.0.BUILD-SNAPSHOT [3/6]
[INFO] --------------------------------[ jar ]---------------------------------
[WARNING] The POM for com.google.guava:guava:jar:21.0 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details
[INFO]
[INFO] --- maven-dependency-plugin:3.0.0:tree (default-cli) @ application-core ---
[INFO] com.mfirm.platform.application.core:application-core:jar:1.10.0.BUILD-SNAPSHOT
[INFO] +- com.mfirm.platform.application.protobuf:application-protobuf:jar:1.10.0.BUILD-SNAPSHOT:compile
[INFO] | +- com.mfirm.core.support.protobuf:protobuf-support:jar:1.2.0.RELEASE:compile
[INFO] | | \- com.google.protobuf:protobuf-java:jar:3.3.1:compile
[INFO] | \- com.mfirm.core:core-support:jar:1.1.2.RELEASE:compile
[INFO] | \- org.aspectj:aspectjrt:jar:1.8.10:compile
[INFO] +- com.mfirm.core.http.service:http-service-core:jar:2.14.0.BUILD-SNAPSHOT:compile
[INFO] | +- org.glassfish:javax.json:jar:1.0.4:compile
[INFO] | +- org.owasp.esapi:esapi:jar:2.2.0.0:compile
[INFO] | | +- com.io7m.xom:xom:jar:1.2.10:compile
[INFO] | | +- commons-beanutils:commons-beanutils:jar:1.9.3:compile
[INFO] | | | +- commons-logging:commons-logging:jar:1.2:compile
[INFO] | | | \- commons-collections:commons-collections:jar:3.2.2:compile
[INFO] | | +- commons-configuration:commons-configuration:jar:1.10:compile
[INFO] | | +- commons-fileupload:commons-fileupload:jar:1.3.3:compile
[INFO] | | +- org.apache.commons:commons-collections4:jar:4.2:compile
[INFO] | | +- org.apache-extras.beanshell:bsh:jar:2.0b6:compile
[INFO] | | +- org.owasp.antisamy:antisamy:jar:1.5.8:compile
[INFO] | | | +- net.sourceforge.nekohtml:nekohtml:jar:1.9.22:compile
[INFO] | | | +- org.apache.httpcomponents:httpclient:jar:4.4.1:compile
[INFO] | | | | \- org.apache.httpcomponents:httpcore:jar:4.4.1:compile
[INFO] | | | \- commons-codec:commons-codec:jar:1.12:compile
[INFO] | | +- commons-io:commons-io:jar:2.6:compile
[INFO] | | +- org.apache.xmlgraphics:batik-css:jar:1.11:compile
[INFO] | | | +- org.apache.xmlgraphics:batik-util:jar:1.11:compile
[INFO] | | | | +- org.apache.xmlgraphics:batik-constants:jar:1.11:compile
[INFO] | | | | \- org.apache.xmlgraphics:batik-i18n:jar:1.11:compile
[INFO] | | | +- org.apache.xmlgraphics:xmlgraphics-commons:jar:2.3:compile
[INFO] | | | \- xml-apis:xml-apis-ext:jar:1.3.04:compile
[INFO] | | +- xalan:xalan:jar:2.7.2:compile
[INFO] | | | \- xalan:serializer:jar:2.7.2:compile
[INFO] | | +- xerces:xercesImpl:jar:2.12.0:compile
[INFO] | | \- xml-apis:xml-apis:jar:1.4.01:compile
[INFO] | +- org.springframework:spring-web:jar:5.3.0:compile
[INFO] | | +- org.springframework:spring-beans:jar:5.3.0:compile
[INFO] | | \- org.springframework:spring-core:jar:5.3.0:compile
[INFO] | | \- org.springframework:spring-jcl:jar:5.3.0:compile
[INFO] | +- org.hibernate:hibernate-core:jar:5.2.1.Final:compile
[INFO] | | +- org.jboss.logging:jboss-logging:jar:3.3.0.Final:compile
[INFO] | | +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile
[INFO] | | +- antlr:antlr:jar:2.7.7:compile
[INFO] | | +- org.apache.geronimo.specs:geronimo-jta_1.1_spec:jar:1.1.1:compile
[INFO] | | +- org.jboss:jandex:jar:2.0.0.Final:compile
[INFO] | | +- com.fasterxml:classmate:jar:1.3.0:compile
[INFO] | | +- dom4j:dom4j:jar:1.6.1:compile
[INFO] | | +- org.hibernate.common:hibernate-commons-annotations:jar:5.0.1.Final:compile
[INFO] | | \- javax.enterprise:cdi-api:jar:1.1-PFD:compile
[INFO] | | +- javax.el:el-api:jar:2.2:compile
[INFO] | | +- org.jboss.spec.javax.interceptor:jboss-interceptors-api_1.1_spec:jar:1.0.0.Beta1:compile
[INFO] | | +- javax.annotation:jsr250-api:jar:1.0:compile
[INFO] | | \- javax.inject:javax.inject:jar:1:compile
[INFO] | \- com.google.guava:guava:jar:21.0:compile
[INFO] +- org.javassist:javassist:jar:3.25.0-GA:compile
[INFO] +- org.slf4j:slf4j-log4j12:jar:1.7.24:compile
[INFO] | +- org.slf4j:slf4j-api:jar:1.7.24:compile
[INFO] | \- log4j:log4j:jar:1.2.17:compile
[INFO] +- com.fasterxml.jackson.core:jackson-annotations:jar:2.12.2:compile
[INFO] +- org.testng:testng:jar:6.10:test
[INFO] | \- com.beust:jcommander:jar:1.48:test
[INFO] +- org.mockito:mockito-all:jar:1.10.19:test
[INFO] +- com.googlecode.json-simple:json-simple:jar:1.1.1:test
[INFO] +- org.skyscreamer:jsonassert:jar:1.2.3:test
[INFO] | \- org.json:json:jar:20090211:test
[INFO] +- com.jayway.jsonpath:json-path:jar:0.8.1:test
[INFO] | +- net.minidev:json-smart:jar:1.1.1:test
[INFO] | \- commons-lang:commons-lang:jar:2.6:compile
[INFO] +- junit:junit:jar:4.12:test
[INFO] | \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] \- com.h2database:h2:jar:1.4.197:test