rest-assured: Found duplicate (but equal) classes in multiple 3.2.0 artifacts
I upgraded my project from io.rest-assured:rest-assured version 3.1.1 to 3.2.0 and my builds started complaining of duplicate classes present in multiple artifacts:
[WARNING] Found duplicate (but equal) classes in [io.rest-assured:json-path:3.2.0, io.rest-assured:rest-assured-common:3.2.0, io.rest-assured:rest-assured:3.2.0, io.rest-assured:xml-path:3.2.0]:
[WARNING] io.restassured.exception.PathException
[WARNING] io.restassured.internal.assertion.AssertParameter
[WARNING] io.restassured.internal.assertion.Assertion
[WARNING] io.restassured.internal.assertion.AssertionSupport
[WARNING] io.restassured.internal.assertion.EndToEndQuoteFragmentEscaper
[WARNING] io.restassured.internal.assertion.GetAtPathFragmentEscaper
[WARNING] io.restassured.internal.assertion.HyphenQuoteFragmentEscaper
[WARNING] io.restassured.internal.assertion.PathFragmentEscaper
[WARNING] io.restassured.internal.classpath.ClassPathResolver
[WARNING] io.restassured.internal.mapper.ObjectDeserializationContextImpl
[WARNING] io.restassured.internal.path.ObjectConverter
[WARNING] io.restassured.mapper.DataToDeserialize
[WARNING] io.restassured.mapper.ObjectDeserializationContext
[WARNING] io.restassured.mapper.factory.ObjectMapperFactory
[WARNING] io.restassured.mapper.resolver.ObjectMapperResolver
[WARNING] Found duplicate (but equal) classes in [io.rest-assured:json-path:3.2.0, io.rest-assured:rest-assured:3.2.0]:
[WARNING] io.restassured.internal.path.json.ConfigurableJsonSlurper
[WARNING] io.restassured.internal.path.json.JSONAssertion
[WARNING] io.restassured.internal.path.json.JsonPrettifier
[WARNING] io.restassured.internal.path.json.mapping.JsonObjectDeserializer
[WARNING] io.restassured.internal.path.json.mapping.JsonPathGsonObjectDeserializer
[WARNING] io.restassured.internal.path.json.mapping.JsonPathJackson1ObjectDeserializer
[WARNING] io.restassured.internal.path.json.mapping.JsonPathJackson2ObjectDeserializer
[WARNING] io.restassured.mapper.factory.DefaultGsonObjectMapperFactory
[WARNING] io.restassured.mapper.factory.DefaultJackson1ObjectMapperFactory
[WARNING] io.restassured.mapper.factory.DefaultJackson2ObjectMapperFactory
[WARNING] io.restassured.mapper.factory.GsonObjectMapperFactory
[WARNING] io.restassured.mapper.factory.Jackson1ObjectMapperFactory
[WARNING] io.restassured.mapper.factory.Jackson2ObjectMapperFactory
[WARNING] io.restassured.path.json.JsonPath
[WARNING] io.restassured.path.json.config.JsonParserType
[WARNING] io.restassured.path.json.config.JsonPathConfig
[WARNING] io.restassured.path.json.exception.JsonPathException
[WARNING] io.restassured.path.json.mapping.JsonPathObjectDeserializer
[WARNING] Found duplicate (but equal) classes in [io.rest-assured:rest-assured:3.2.0, io.rest-assured:xml-path:3.2.0]:
[WARNING] io.restassured.internal.path.xml.GroovyNodeSerializer
[WARNING] io.restassured.internal.path.xml.NodeBase
[WARNING] io.restassured.internal.path.xml.NodeChildrenImpl
[WARNING] io.restassured.internal.path.xml.NodeImpl
[WARNING] io.restassured.internal.path.xml.XMLAssertion
[WARNING] io.restassured.internal.path.xml.XmlEntity
[WARNING] io.restassured.internal.path.xml.XmlPrettifier
[WARNING] io.restassured.internal.path.xml.XmlRenderer
[WARNING] io.restassured.internal.path.xml.mapping.XmlObjectDeserializer
[WARNING] io.restassured.internal.path.xml.mapping.XmlPathJaxbObjectDeserializer
[WARNING] io.restassured.mapper.factory.DefaultJAXBObjectMapperFactory
[WARNING] io.restassured.mapper.factory.JAXBObjectMapperFactory
[WARNING] io.restassured.path.xml.XmlPath
[WARNING] io.restassured.path.xml.config.XmlParserType
[WARNING] io.restassured.path.xml.config.XmlPathConfig
[WARNING] io.restassured.path.xml.element.Node
[WARNING] io.restassured.path.xml.element.NodeChildren
[WARNING] io.restassured.path.xml.element.PathElement
[WARNING] io.restassured.path.xml.exception.XmlPathException
[WARNING] io.restassured.path.xml.mapping.XmlPathObjectDeserializer
Is this intentional?
CC // @larrysteinke
About this issue
- Original URL
- State: closed
- Created 6 years ago
- Comments: 23 (16 by maintainers)
It looks like the only good solution for this issue, is a refactoring to avoid split packages. After that, the <Import-Package> statements can be refined to only contain the packages from the bundles itselves.
https://twitter.com/milendyankov/status/1095631397316976640