[
https://issues.apache.org/jira/browse/BAHIR-159?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
PandaMonkey updated BAHIR-159:
------------------------------
Description:
Hi, our project needs to use
org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0, which has dependency
conflict problem leading to *NoSuchMethodError*. There are duplicate classes in
the different JARs : <commons-beanutils:*commons-beanutils-core*:1.8.0:> and
<commons-beanutils:*commons-beanutils*:1.7.0:>, and the same problem exists in
JAR pair:
<*com.sun.jersey:jersey-core*:1.9:><*javax.ws.rs:javax.ws.rs-api*:2.0.1:>.
Unfortunately, these duplicate classes have different features. As the JVM only
load the classes present first on the classpath and shadow the other duplicate
ones. This is the main reason why our program crashed. So we spend some efforts
to analyze the source code. The conflict information is shown below.
1. Risk for
jar-pair:<commons-beanutils:commons-beanutils-core:1.8.0:><commons-beanutils:commons-beanutils:1.7.0:>
a) Methods that only exist in commons-beanutils:commons-beanutils-core:1.8.0::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-common:2.6.5:->commons-configuration:commons-configuration:1.6:->commons-beanutils:commons-beanutils-core:1.8.0:]
{color:#d04437}<org.apache.commons.beanutils.BasicDynaBean: java.util.Map
getMap()>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: boolean
initCause(java.lang.Throwable,java.lang.Throwable)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: boolean
getCacheFast(java.util.Map)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: java.util.Map
createCache()>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: void
setCacheFast(java.util.Map,boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: boolean
initCause(java.lang.Throwable,java.lang.Throwable)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean:
java.lang.reflect.Method getInitCauseMethod()>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: void
<init>(org.apache.commons.beanutils.ConvertUtilsBean)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: java.lang.Object
convert(java.lang.Object,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtils: java.lang.Object
convert(java.lang.Object,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtils:
org.apache.commons.beanutils.Converter
lookup(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerStandard(boolean,boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
register(boolean,boolean,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerPrimitives(boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerOther(boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerArrays(boolean,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerArrayConverter(java.lang.Class,org.apache.commons.beanutils.Converter,boolean,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean:
org.apache.commons.beanutils.Converter
lookup(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean:
java.lang.Object convert(java.lang.Object,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.DynaProperty: int
hashCode()>{color}
{color:#d04437}<org.apache.commons.beanutils.DynaProperty: boolean
equals(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.JDBCDynaClass: java.lang.String
getColumnName(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.JDBCDynaClass: java.lang.Object
getObject(java.sql.ResultSet,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.LazyDynaBean:
org.apache.commons.logging.Log logger()>{color}
{color:#d04437}<org.apache.commons.beanutils.LazyDynaMap: java.util.Map
getMap()>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
internalGetMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.Class[] access$100()>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method getMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
getMethod(java.lang.Class,java.lang.String,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils:
java.lang.reflect.Method
getAccessibleMethod(java.lang.Class,java.lang.reflect.Method)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils:
java.lang.reflect.Method
getCachedMethod(org.apache.commons.beanutils.MethodUtils$MethodDescriptor)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: int
clearCache()>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[],java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: float
getTotalTransformationCost(java.lang.Class[],java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
setCacheMethods(boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[],java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
cacheMethod(org.apache.commons.beanutils.MethodUtils$MethodDescriptor,java.lang.reflect.Method)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: float
getObjectTransformationCost(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils:
java.lang.reflect.Method
getAccessibleMethodFromSuperclass(java.lang.Class,java.lang.String,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
setMethodAccessible(java.lang.reflect.Method)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
java.lang.reflect.Method
getWriteMethod(java.lang.Class,java.beans.PropertyDescriptor)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
org.apache.commons.beanutils.expression.Resolver getResolver()>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
setResolver(org.apache.commons.beanutils.expression.Resolver)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
java.lang.reflect.Method
getReadMethod(java.lang.Class,java.beans.PropertyDescriptor)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
setPropertyOfMapBean(java.util.Map,java.lang.String,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
java.lang.Object getPropertyOfMapBean(java.util.Map,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.ResultSetDynaClass:
java.lang.Object getObjectFromResultSet(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.lang.Class
getBeanClass()>{color}
{color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.util.Map
access$000()>{color}
{color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.util.Map
getDynaClassesMap()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.AbstractArrayConverter:
void <init>(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanArrayConverter:
void
<init>(org.apache.commons.beanutils.converters.BooleanConverter,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanArrayConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter: void
<init>(java.lang.String[],java.lang.String[],java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.String[] copyStrings(java.lang.String[])>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter: void
<init>(java.lang.String[],java.lang.String[])>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.String convertToString(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.String convertToString(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.text.DateFormat getFormat(java.util.Locale,java.util.TimeZone)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.text.DateFormat getFormat(java.util.Locale,java.util.TimeZone)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter: void
<init>(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.BigDecimalLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.BigIntegerLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.lang.String
convertLocalizedPattern(java.lang.String,java.util.Locale)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.lang.String
convertPattern(java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.lang.String initDefaultChars()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.LongLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.ShortLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
b) Methods that only exist in commons-beanutils:commons-beanutils:1.7.0::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-common:2.6.5:->commons-configuration:commons-configuration:1.6:->commons-digester:commons-digester:1.8:->commons-beanutils:commons-beanutils:1.7.0:]
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: int
findLastNestedIndex(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor: boolean
throwsException(java.lang.reflect.Method,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method[] getPublicDeclaredMethods(java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor: boolean
isSubclass(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
findMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
findMethod(java.lang.Class,java.lang.String,int,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
internalFindMethod(java.lang.Class,java.lang.String,int,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
internalFindMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: int
findNextNestedIndex(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.BaseLocaleConverter: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.LocaleBeanUtils: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.LocaleBeanUtils:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.text.SimpleDateFormat
getFormatter(java.lang.String,java.util.Locale)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DecimalLocaleConverter:
void <clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.StringLocaleConverter:
void <clinit>()>{color}
2. Risk for
jar-pair:<com.sun.jersey:jersey-core:1.9:><javax.ws.rs:javax.ws.rs-api:2.0.1:>
a) Methods that only exist in com.sun.jersey:jersey-core:1.9::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-mapreduce-client-core:2.6.5:->org.apache.hadoop:hadoop-yarn-common:2.6.5:->com.sun.jersey:jersey-core:1.9:]
{color:#d04437}<javax.ws.rs.core.Application: void <clinit>()>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: java.lang.reflect.Type
getSuperclassTypeParameter(java.lang.Class)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType$1: void
<init>(javax.ws.rs.core.MediaType)>{color}
b) Methods that only exist in javax.ws.rs:javax.ws.rs-api:2.0.1::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.glassfish.jersey.core:jersey-client:2.22.2:->javax.ws.rs:javax.ws.rs-api:2.0.1:]
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable,javax.ws.rs.core.Response$Status)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,javax.ws.rs.core.Response)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,int)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,javax.ws.rs.core.Response$Status)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable,javax.ws.rs.core.Response)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: javax.ws.rs.core.Response
validate(javax.ws.rs.core.Response,javax.ws.rs.core.Response$Status$Family)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable,int)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: javax.ws.rs.core.Response
validate(javax.ws.rs.core.Response,javax.ws.rs.core.Response$Status)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: java.lang.String
computeExceptionMessage(javax.ws.rs.core.Response)>{color}
{color:#d04437}<javax.ws.rs.core.Application: java.util.Map
getProperties()>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: boolean
notEqual(java.util.Map,java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: int
hashCodeOf(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: int
hashCodeOf(java.util.Collection)>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: boolean
notEqual(java.util.Collection,java.util.Collection)>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: boolean
equals(java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: int hashCode()>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: java.lang.String
toString()>{color}
{color:#d04437}<javax.ws.rs.core.HttpHeaders: java.util.Date getDate()>{color}
{color:#d04437}<javax.ws.rs.core.HttpHeaders: int getLength()>{color}
{color:#d04437}<javax.ws.rs.core.HttpHeaders: java.lang.String
getHeaderString(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType$1: void <init>()>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: java.util.TreeMap
createParametersMap(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: void
<init>(java.lang.String,java.lang.String,java.lang.String,java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: void
<init>(java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: javax.ws.rs.core.MediaType
withCharset(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
addAll(java.lang.Object,java.util.List)>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
addAll(java.lang.Object,java.lang.Object[])>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
addFirst(java.lang.Object,java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: boolean
equalsIgnoreValueOrder(javax.ws.rs.core.MultivaluedMap)>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: java.util.Date getExpiry()>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: boolean isHttpOnly()>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: void
<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,boolean,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: void
<init>(javax.ws.rs.core.Cookie,java.lang.String,int,java.util.Date,boolean,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: void
<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,int,java.util.Date,boolean,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder allow(java.util.Set)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder links(javax.ws.rs.core.Link[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
entity(java.lang.Object,java.lang.'annotation'.Annotation[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
link(java.net.URI,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
link(java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
replaceAll(javax.ws.rs.core.MultivaluedMap)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
variants(javax.ws.rs.core.Variant[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder encoding(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder allow(java.lang.String[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$Status$Family:
javax.ws.rs.core.Response$Status$Family familyOf(int)>{color}
{color:#d04437}<javax.ws.rs.core.Response:
javax.ws.rs.core.Response$ResponseBuilder accepted(java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Set
getAllowedMethods()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Link
getLink(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response:
javax.ws.rs.core.Response$StatusType getStatusInfo()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MultivaluedMap
getHeaders()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MultivaluedMap
getStringHeaders()>{color}
{color:#d04437}<javax.ws.rs.core.Response:
javax.ws.rs.core.Response$ResponseBuilder accepted()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(javax.ws.rs.core.GenericType,java.lang.'annotation'.Annotation[])>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(javax.ws.rs.core.GenericType)>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Map getCookies()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.net.URI getLocation()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Link$Builder
getLinkBuilder(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Locale
getLanguage()>{color}
{color:#d04437}<javax.ws.rs.core.Response: int getLength()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Date getDate()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Set getLinks()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(java.lang.Class,java.lang.'annotation'.Annotation[])>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Date
getLastModified()>{color}
{color:#d04437}<javax.ws.rs.core.Response: boolean bufferEntity()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(java.lang.Class)>{color}
{color:#d04437}<javax.ws.rs.core.Response: boolean
hasLink(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.EntityTag
getEntityTag()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MediaType
getMediaType()>{color}
{color:#d04437}<javax.ws.rs.core.Response: void close()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.String
getHeaderString(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: boolean hasEntity()>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
uri(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: java.net.URI
build(java.lang.Object[],boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplates(java.util.Map,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplateFromEncoded(java.lang.String,java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: java.lang.String
toTemplate()>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
fromLink(javax.ws.rs.core.Link)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplates(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
fromMethod(java.lang.Class,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: java.net.URI
buildFromMap(java.util.Map,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplate(java.lang.String,java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplatesFromEncoded(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplate(java.lang.String,java.lang.Object,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriInfo: java.net.URI
resolve(java.net.URI)>{color}
{color:#d04437}<javax.ws.rs.core.UriInfo: java.net.URI
relativize(java.net.URI)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: void
<init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: void
<init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: void
<init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: java.lang.String
getLanguageString()>{color}
{color:#d04437}<javax.ws.rs.ext.FactoryFinder: void <clinit>()>{color}
{color:#d04437}<javax.ws.rs.ext.FactoryFinder: java.util.logging.Logger
access$000()>{color}
{color:#d04437}<javax.ws.rs.ext.RuntimeDelegate: javax.ws.rs.core.Link$Builder
createLinkBuilder()>{color}
{color:#d04437} {color}
was:
Hi, our project needs to use
org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0, which has dependency
conflict problem leading to *NoSuchMethodError*. There are duplicate classes in
the different JARs : <commons-beanutils:*commons-beanutils-core*:1.8.0:> and
<commons-beanutils:*commons-beanutils*:1.7.0:>, and the same problem exists in
JAR pair:
<*com.sun.jersey:jersey-core*:1.9:><*javax.ws.rs:javax.ws.rs-api*:2.0.1:>.
Unfortunately, these duplicate classes have different features. As the JVM only
load the classes present first on the classpath and shadow the other duplicate
ones. This is the main reason why our program crashed. So we spend some efforts
to analyze the source code. The conflict information is shown below.
1. Risk for
jar-pair:<commons-beanutils:commons-beanutils-core:1.8.0:><commons-beanutils:commons-beanutils:1.7.0:>
a) Methods that only exist in commons-beanutils:commons-beanutils-core:1.8.0::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-common:2.6.5:->commons-configuration:commons-configuration:1.6:->commons-beanutils:commons-beanutils-core:1.8.0:]
{color:#d04437}<org.apache.commons.beanutils.BasicDynaBean: java.util.Map
getMap()>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: boolean
initCause(java.lang.Throwable,java.lang.Throwable)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: boolean
getCacheFast(java.util.Map)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: java.util.Map
createCache()>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtils: void
setCacheFast(java.util.Map,boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: boolean
initCause(java.lang.Throwable,java.lang.Throwable)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean:
java.lang.reflect.Method getInitCauseMethod()>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: void
<init>(org.apache.commons.beanutils.ConvertUtilsBean)>{color}
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: java.lang.Object
convert(java.lang.Object,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtils: java.lang.Object
convert(java.lang.Object,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtils:
org.apache.commons.beanutils.Converter
lookup(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerStandard(boolean,boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
register(boolean,boolean,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerPrimitives(boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerOther(boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerArrays(boolean,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
registerArrayConverter(java.lang.Class,org.apache.commons.beanutils.Converter,boolean,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean:
org.apache.commons.beanutils.Converter
lookup(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: java.lang.Object
convert(java.lang.Object,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.DynaProperty: int
hashCode()>{color}
{color:#d04437}<org.apache.commons.beanutils.DynaProperty: boolean
equals(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.JDBCDynaClass: java.lang.String
getColumnName(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.JDBCDynaClass: java.lang.Object
getObject(java.sql.ResultSet,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.LazyDynaBean:
org.apache.commons.logging.Log logger()>{color}
{color:#d04437}<org.apache.commons.beanutils.LazyDynaMap: java.util.Map
getMap()>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
internalGetMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.Class[] access$100()>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method getMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
getMethod(java.lang.Class,java.lang.String,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils:
java.lang.reflect.Method
getAccessibleMethod(java.lang.Class,java.lang.reflect.Method)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils:
java.lang.reflect.Method
getCachedMethod(org.apache.commons.beanutils.MethodUtils$MethodDescriptor)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: int
clearCache()>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[],java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: float
getTotalTransformationCost(java.lang.Class[],java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
setCacheMethods(boolean)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[],java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
cacheMethod(org.apache.commons.beanutils.MethodUtils$MethodDescriptor,java.lang.reflect.Method)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: float
getObjectTransformationCost(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils:
java.lang.reflect.Method
getAccessibleMethodFromSuperclass(java.lang.Class,java.lang.String,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
setMethodAccessible(java.lang.reflect.Method)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
java.lang.reflect.Method
getWriteMethod(java.lang.Class,java.beans.PropertyDescriptor)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
org.apache.commons.beanutils.expression.Resolver getResolver()>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
setResolver(org.apache.commons.beanutils.expression.Resolver)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
java.lang.reflect.Method
getReadMethod(java.lang.Class,java.beans.PropertyDescriptor)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
setPropertyOfMapBean(java.util.Map,java.lang.String,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
java.lang.Object getPropertyOfMapBean(java.util.Map,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.ResultSetDynaClass:
java.lang.Object getObjectFromResultSet(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.lang.Class
getBeanClass()>{color}
{color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.util.Map
access$000()>{color}
{color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.util.Map
getDynaClassesMap()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.AbstractArrayConverter:
void <init>(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanArrayConverter:
void
<init>(org.apache.commons.beanutils.converters.BooleanConverter,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanArrayConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter: void
<init>(java.lang.String[],java.lang.String[],java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.String[] copyStrings(java.lang.String[])>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter: void
<init>(java.lang.String[],java.lang.String[])>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.String convertToString(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.String convertToString(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.text.DateFormat getFormat(java.util.Locale,java.util.TimeZone)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.text.DateFormat getFormat(java.util.Locale,java.util.TimeZone)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter: void
<init>(java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Class getDefaultType()>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.BigDecimalLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.BigIntegerLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.lang.String
convertLocalizedPattern(java.lang.String,java.util.Locale)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.lang.String
convertPattern(java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.lang.String initDefaultChars()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.LongLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.ShortLocaleConverter:
java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
b) Methods that only exist in commons-beanutils:commons-beanutils:1.7.0::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-common:2.6.5:->commons-configuration:commons-configuration:1.6:->commons-digester:commons-digester:1.8:->commons-beanutils:commons-beanutils:1.7.0:]
{color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: int
findLastNestedIndex(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor: boolean
throwsException(java.lang.reflect.Method,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method[] getPublicDeclaredMethods(java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor: boolean
isSubclass(java.lang.Class,java.lang.Class)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
findMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
findMethod(java.lang.Class,java.lang.String,int,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
internalFindMethod(java.lang.Class,java.lang.String,int,java.lang.Class[])>{color}
{color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
java.lang.reflect.Method
internalFindMethod(java.lang.Class,java.lang.String,int)>{color}
{color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: int
findNextNestedIndex(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.BaseLocaleConverter: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.LocaleBeanUtils: void
<clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.LocaleBeanUtils:
java.lang.Class class$(java.lang.String)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
java.text.SimpleDateFormat
getFormatter(java.lang.String,java.util.Locale)>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.DecimalLocaleConverter:
void <clinit>()>{color}
{color:#d04437}<org.apache.commons.beanutils.locale.converters.StringLocaleConverter:
void <clinit>()>{color}
2. Risk for
jar-pair:<com.sun.jersey:jersey-core:1.9:><javax.ws.rs:javax.ws.rs-api:2.0.1:>
a) Methods that only exist in com.sun.jersey:jersey-core:1.9::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-mapreduce-client-core:2.6.5:->org.apache.hadoop:hadoop-yarn-common:2.6.5:->com.sun.jersey:jersey-core:1.9:]
{color:#d04437}<javax.ws.rs.core.Application: void <clinit>()>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: java.lang.reflect.Type
getSuperclassTypeParameter(java.lang.Class)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType$1: void
<init>(javax.ws.rs.core.MediaType)>{color}
b) Methods that only exist in javax.ws.rs:javax.ws.rs-api:2.0.1::
[neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.glassfish.jersey.core:jersey-client:2.22.2:->javax.ws.rs:javax.ws.rs-api:2.0.1:]
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable,javax.ws.rs.core.Response$Status)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,javax.ws.rs.core.Response)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,int)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,javax.ws.rs.core.Response$Status)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable,javax.ws.rs.core.Response)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: javax.ws.rs.core.Response
validate(javax.ws.rs.core.Response,javax.ws.rs.core.Response$Status$Family)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable,int)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: javax.ws.rs.core.Response
validate(javax.ws.rs.core.Response,javax.ws.rs.core.Response$Status)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: void
<init>(java.lang.String,java.lang.Throwable)>{color}
{color:#d04437}<javax.ws.rs.WebApplicationException: java.lang.String
computeExceptionMessage(javax.ws.rs.core.Response)>{color}
{color:#d04437}<javax.ws.rs.core.Application: java.util.Map
getProperties()>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: boolean
notEqual(java.util.Map,java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: int
hashCodeOf(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: int
hashCodeOf(java.util.Collection)>{color}
{color:#d04437}<javax.ws.rs.core.CacheControl: boolean
notEqual(java.util.Collection,java.util.Collection)>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: boolean
equals(java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: int hashCode()>{color}
{color:#d04437}<javax.ws.rs.core.GenericEntity: java.lang.String
toString()>{color}
{color:#d04437}<javax.ws.rs.core.HttpHeaders: java.util.Date getDate()>{color}
{color:#d04437}<javax.ws.rs.core.HttpHeaders: int getLength()>{color}
{color:#d04437}<javax.ws.rs.core.HttpHeaders: java.lang.String
getHeaderString(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType$1: void <init>()>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: java.util.TreeMap
createParametersMap(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: void
<init>(java.lang.String,java.lang.String,java.lang.String,java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: void
<init>(java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.MediaType: javax.ws.rs.core.MediaType
withCharset(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
addAll(java.lang.Object,java.util.List)>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
addAll(java.lang.Object,java.lang.Object[])>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
addFirst(java.lang.Object,java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.MultivaluedMap: boolean
equalsIgnoreValueOrder(javax.ws.rs.core.MultivaluedMap)>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: java.util.Date getExpiry()>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: boolean isHttpOnly()>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: void
<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,boolean,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: void
<init>(javax.ws.rs.core.Cookie,java.lang.String,int,java.util.Date,boolean,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.NewCookie: void
<init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,int,java.util.Date,boolean,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder allow(java.util.Set)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder links(javax.ws.rs.core.Link[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
entity(java.lang.Object,java.lang.'annotation'.Annotation[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
link(java.net.URI,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
link(java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
replaceAll(javax.ws.rs.core.MultivaluedMap)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder
variants(javax.ws.rs.core.Variant[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder encoding(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
javax.ws.rs.core.Response$ResponseBuilder allow(java.lang.String[])>{color}
{color:#d04437}<javax.ws.rs.core.Response$Status$Family:
javax.ws.rs.core.Response$Status$Family familyOf(int)>{color}
{color:#d04437}<javax.ws.rs.core.Response:
javax.ws.rs.core.Response$ResponseBuilder accepted(java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Set
getAllowedMethods()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Link
getLink(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Response$StatusType
getStatusInfo()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MultivaluedMap
getHeaders()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MultivaluedMap
getStringHeaders()>{color}
{color:#d04437}<javax.ws.rs.core.Response:
javax.ws.rs.core.Response$ResponseBuilder accepted()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(javax.ws.rs.core.GenericType,java.lang.'annotation'.Annotation[])>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(javax.ws.rs.core.GenericType)>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Map getCookies()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.net.URI getLocation()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Link$Builder
getLinkBuilder(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Locale
getLanguage()>{color}
{color:#d04437}<javax.ws.rs.core.Response: int getLength()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Date getDate()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Set getLinks()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(java.lang.Class,java.lang.'annotation'.Annotation[])>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.util.Date
getLastModified()>{color}
{color:#d04437}<javax.ws.rs.core.Response: boolean bufferEntity()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
readEntity(java.lang.Class)>{color}
{color:#d04437}<javax.ws.rs.core.Response: boolean
hasLink(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.EntityTag
getEntityTag()>{color}
{color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MediaType
getMediaType()>{color}
{color:#d04437}<javax.ws.rs.core.Response: void close()>{color}
{color:#d04437}<javax.ws.rs.core.Response: java.lang.String
getHeaderString(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Response: boolean hasEntity()>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
uri(java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: java.net.URI
build(java.lang.Object[],boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplates(java.util.Map,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplateFromEncoded(java.lang.String,java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: java.lang.String
toTemplate()>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
fromLink(javax.ws.rs.core.Link)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplates(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
fromMethod(java.lang.Class,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: java.net.URI
buildFromMap(java.util.Map,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplate(java.lang.String,java.lang.Object)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplatesFromEncoded(java.util.Map)>{color}
{color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
resolveTemplate(java.lang.String,java.lang.Object,boolean)>{color}
{color:#d04437}<javax.ws.rs.core.UriInfo: java.net.URI
resolve(java.net.URI)>{color}
{color:#d04437}<javax.ws.rs.core.UriInfo: java.net.URI
relativize(java.net.URI)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: void
<init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: void
<init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: void
<init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String,java.lang.String,java.lang.String)>{color}
{color:#d04437}<javax.ws.rs.core.Variant: java.lang.String
getLanguageString()>{color}
{color:#d04437}<javax.ws.rs.ext.FactoryFinder: void <clinit>()>{color}
{color:#d04437}<javax.ws.rs.ext.FactoryFinder: java.util.logging.Logger
access$000()>{color}
{color:#d04437}<javax.ws.rs.ext.RuntimeDelegate: javax.ws.rs.core.Link$Builder
createLinkBuilder()>{color}
{color:#d04437} {color}
> Our project needs to use
> org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0, which has dependency
> conflict problem.
> ---------------------------------------------------------------------------------------------------------------------
>
> Key: BAHIR-159
> URL: https://issues.apache.org/jira/browse/BAHIR-159
> Project: Bahir
> Issue Type: Bug
> Components: Spark Streaming Connectors
> Affects Versions: Spark-2.2.0
> Reporter: PandaMonkey
> Priority: Major
> Fix For: Spark-2.2.1
>
>
> Hi, our project needs to use
> org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0, which has dependency
> conflict problem leading to *NoSuchMethodError*. There are duplicate classes
> in the different JARs : <commons-beanutils:*commons-beanutils-core*:1.8.0:>
> and <commons-beanutils:*commons-beanutils*:1.7.0:>, and the same problem
> exists in JAR pair:
> <*com.sun.jersey:jersey-core*:1.9:><*javax.ws.rs:javax.ws.rs-api*:2.0.1:>.
> Unfortunately, these duplicate classes have different features. As the JVM
> only load the classes present first on the classpath and shadow the other
> duplicate ones. This is the main reason why our program crashed. So we spend
> some efforts to analyze the source code. The conflict information is shown
> below.
>
> 1. Risk for
> jar-pair:<commons-beanutils:commons-beanutils-core:1.8.0:><commons-beanutils:commons-beanutils:1.7.0:>
> a) Methods that only exist in
> commons-beanutils:commons-beanutils-core:1.8.0::
> [neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-common:2.6.5:->commons-configuration:commons-configuration:1.6:->commons-beanutils:commons-beanutils-core:1.8.0:]
> {color:#d04437}<org.apache.commons.beanutils.BasicDynaBean: java.util.Map
> getMap()>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtils: boolean
> initCause(java.lang.Throwable,java.lang.Throwable)>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtils: boolean
> getCacheFast(java.util.Map)>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtils: java.util.Map
> createCache()>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtils: void
> setCacheFast(java.util.Map,boolean)>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: boolean
> initCause(java.lang.Throwable,java.lang.Throwable)>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean:
> java.lang.reflect.Method getInitCauseMethod()>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: void
> <init>(org.apache.commons.beanutils.ConvertUtilsBean)>{color}
> {color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: java.lang.Object
> convert(java.lang.Object,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtils: java.lang.Object
> convert(java.lang.Object,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtils:
> org.apache.commons.beanutils.Converter
> lookup(java.lang.Class,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
> registerStandard(boolean,boolean)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
> register(boolean,boolean,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
> registerPrimitives(boolean)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
> registerOther(boolean)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
> registerArrays(boolean,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean: void
> registerArrayConverter(java.lang.Class,org.apache.commons.beanutils.Converter,boolean,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean:
> org.apache.commons.beanutils.Converter
> lookup(java.lang.Class,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.ConvertUtilsBean:
> java.lang.Object convert(java.lang.Object,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.DynaProperty: int
> hashCode()>{color}
> {color:#d04437}<org.apache.commons.beanutils.DynaProperty: boolean
> equals(java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.JDBCDynaClass: java.lang.String
> getColumnName(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.JDBCDynaClass: java.lang.Object
> getObject(java.sql.ResultSet,java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.LazyDynaBean:
> org.apache.commons.logging.Log logger()>{color}
> {color:#d04437}<org.apache.commons.beanutils.LazyDynaMap: java.util.Map
> getMap()>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> internalGetMethod(java.lang.Class,java.lang.String,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.Class[] access$100()>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> getMethod(java.lang.Class,java.lang.String,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> getMethod(java.lang.Class,java.lang.String,java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils:
> java.lang.reflect.Method
> getAccessibleMethod(java.lang.Class,java.lang.reflect.Method)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils:
> java.lang.reflect.Method
> getCachedMethod(org.apache.commons.beanutils.MethodUtils$MethodDescriptor)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: int
> clearCache()>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
> invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[],java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
> invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: float
> getTotalTransformationCost(java.lang.Class[],java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
> setCacheMethods(boolean)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
> invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[],java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
> cacheMethod(org.apache.commons.beanutils.MethodUtils$MethodDescriptor,java.lang.reflect.Method)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
> invokeExactStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
> invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: float
> getObjectTransformationCost(java.lang.Class,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils:
> java.lang.reflect.Method
> getAccessibleMethodFromSuperclass(java.lang.Class,java.lang.String,java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: java.lang.Object
> invokeStaticMethod(java.lang.Class,java.lang.String,java.lang.Object[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MethodUtils: void
> setMethodAccessible(java.lang.reflect.Method)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
> java.lang.reflect.Method
> getWriteMethod(java.lang.Class,java.beans.PropertyDescriptor)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
> org.apache.commons.beanutils.expression.Resolver getResolver()>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
> setResolver(org.apache.commons.beanutils.expression.Resolver)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
> java.lang.reflect.Method
> getReadMethod(java.lang.Class,java.beans.PropertyDescriptor)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
> setPropertyOfMapBean(java.util.Map,java.lang.String,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean:
> java.lang.Object getPropertyOfMapBean(java.util.Map,java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: void
> <clinit>()>{color}
> {color:#d04437}<org.apache.commons.beanutils.ResultSetDynaClass:
> java.lang.Object getObjectFromResultSet(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.lang.Class
> getBeanClass()>{color}
> {color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.util.Map
> access$000()>{color}
> {color:#d04437}<org.apache.commons.beanutils.WrapDynaClass: java.util.Map
> getDynaClassesMap()>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.AbstractArrayConverter:
> void <init>(java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
> java.lang.Class class$(java.lang.String)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanArrayConverter:
> void
> <init>(org.apache.commons.beanutils.converters.BooleanConverter,java.lang.Object)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanArrayConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> void <init>(java.lang.String[],java.lang.String[],java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> void <clinit>()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> java.lang.String[] copyStrings(java.lang.String[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> void <init>(java.lang.String[],java.lang.String[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
> java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
> java.lang.String convertToString(java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
> java.lang.String convertToString(java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
> java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
> java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
> java.text.DateFormat getFormat(java.util.Locale,java.util.TimeZone)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
> java.lang.Class getDefaultType()>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
> java.lang.Class getDefaultType()>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
> java.text.DateFormat getFormat(java.util.Locale,java.util.TimeZone)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
> void <init>(java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
> java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
> java.lang.Class class$(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
> java.lang.Class getDefaultType()>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
> java.lang.Object convertToType(java.lang.Class,java.lang.Object)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.BigDecimalLocaleConverter:
> java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.BigIntegerLocaleConverter:
> java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
> java.lang.String
> convertLocalizedPattern(java.lang.String,java.util.Locale)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
> java.lang.String
> convertPattern(java.lang.String,java.lang.String,java.lang.String)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
> java.lang.String initDefaultChars()>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.LongLocaleConverter:
> java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.ShortLocaleConverter:
> java.lang.Object parse(java.lang.Object,java.lang.String)>{color}
> b) Methods that only exist in commons-beanutils:commons-beanutils:1.7.0::
> [neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-common:2.6.5:->commons-configuration:commons-configuration:1.6:->commons-digester:commons-digester:1.8:->commons-beanutils:commons-beanutils:1.7.0:]
> {color:#d04437}<org.apache.commons.beanutils.BeanUtilsBean: int
> findLastNestedIndex(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> boolean throwsException(java.lang.reflect.Method,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method[] getPublicDeclaredMethods(java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> boolean isSubclass(java.lang.Class,java.lang.Class)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> findMethod(java.lang.Class,java.lang.String,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> findMethod(java.lang.Class,java.lang.String,int,java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> internalFindMethod(java.lang.Class,java.lang.String,int,java.lang.Class[])>{color}
> {color:#d04437}<org.apache.commons.beanutils.MappedPropertyDescriptor:
> java.lang.reflect.Method
> internalFindMethod(java.lang.Class,java.lang.String,int)>{color}
> {color:#d04437}<org.apache.commons.beanutils.PropertyUtilsBean: int
> findNextNestedIndex(java.lang.String)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BigDecimalConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BigIntegerConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.BooleanConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ByteConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.CharacterConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ClassConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.DoubleConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FileConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.FloatConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.IntegerConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.LongConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.ShortConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlDateConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimeConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.converters.SqlTimestampConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.StringConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.converters.URLConverter:
> java.lang.Object convert(java.lang.Class,java.lang.Object)>{color}
> {color:#d04437}<org.apache.commons.beanutils.locale.BaseLocaleConverter:
> void <clinit>()>{color}
> {color:#d04437}<org.apache.commons.beanutils.locale.LocaleBeanUtils: void
> <clinit>()>{color}
> {color:#d04437}<org.apache.commons.beanutils.locale.LocaleBeanUtils:
> java.lang.Class class$(java.lang.String)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.DateLocaleConverter:
> java.text.SimpleDateFormat
> getFormatter(java.lang.String,java.util.Locale)>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.DecimalLocaleConverter:
> void <clinit>()>{color}
>
> {color:#d04437}<org.apache.commons.beanutils.locale.converters.StringLocaleConverter:
> void <clinit>()>{color}
> 2. Risk for
> jar-pair:<com.sun.jersey:jersey-core:1.9:><javax.ws.rs:javax.ws.rs-api:2.0.1:>
> a) Methods that only exist in com.sun.jersey:jersey-core:1.9::
> [neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.apache.hadoop:hadoop-client:2.6.5:->org.apache.hadoop:hadoop-mapreduce-client-core:2.6.5:->org.apache.hadoop:hadoop-yarn-common:2.6.5:->com.sun.jersey:jersey-core:1.9:]
> {color:#d04437}<javax.ws.rs.core.Application: void <clinit>()>{color}
> {color:#d04437}<javax.ws.rs.core.GenericEntity: java.lang.reflect.Type
> getSuperclassTypeParameter(java.lang.Class)>{color}
> {color:#d04437}<javax.ws.rs.core.MediaType$1: void
> <init>(javax.ws.rs.core.MediaType)>{color}
> b) Methods that only exist in javax.ws.rs:javax.ws.rs-api:2.0.1::
> [neu.lab:findbug:0.0.1-SNAPSHOT:->org.apache.bahir:spark-sql-streaming-mqtt_2.11:2.2.0:->org.apache.spark:spark-sql_2.11:2.2.0:->org.apache.spark:spark-core_2.11:2.2.0:->org.glassfish.jersey.core:jersey-client:2.22.2:->javax.ws.rs:javax.ws.rs-api:2.0.1:]
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,java.lang.Throwable,javax.ws.rs.core.Response$Status)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,javax.ws.rs.core.Response)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,int)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,javax.ws.rs.core.Response$Status)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,java.lang.Throwable,javax.ws.rs.core.Response)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException:
> javax.ws.rs.core.Response
> validate(javax.ws.rs.core.Response,javax.ws.rs.core.Response$Status$Family)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,java.lang.Throwable,int)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException:
> javax.ws.rs.core.Response
> validate(javax.ws.rs.core.Response,javax.ws.rs.core.Response$Status)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: void
> <init>(java.lang.String,java.lang.Throwable)>{color}
> {color:#d04437}<javax.ws.rs.WebApplicationException: java.lang.String
> computeExceptionMessage(javax.ws.rs.core.Response)>{color}
> {color:#d04437}<javax.ws.rs.core.Application: java.util.Map
> getProperties()>{color}
> {color:#d04437}<javax.ws.rs.core.CacheControl: boolean
> notEqual(java.util.Map,java.util.Map)>{color}
> {color:#d04437}<javax.ws.rs.core.CacheControl: int
> hashCodeOf(java.util.Map)>{color}
> {color:#d04437}<javax.ws.rs.core.CacheControl: int
> hashCodeOf(java.util.Collection)>{color}
> {color:#d04437}<javax.ws.rs.core.CacheControl: boolean
> notEqual(java.util.Collection,java.util.Collection)>{color}
> {color:#d04437}<javax.ws.rs.core.GenericEntity: boolean
> equals(java.lang.Object)>{color}
> {color:#d04437}<javax.ws.rs.core.GenericEntity: int hashCode()>{color}
> {color:#d04437}<javax.ws.rs.core.GenericEntity: java.lang.String
> toString()>{color}
> {color:#d04437}<javax.ws.rs.core.HttpHeaders: java.util.Date
> getDate()>{color}
> {color:#d04437}<javax.ws.rs.core.HttpHeaders: int getLength()>{color}
> {color:#d04437}<javax.ws.rs.core.HttpHeaders: java.lang.String
> getHeaderString(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.MediaType$1: void <init>()>{color}
> {color:#d04437}<javax.ws.rs.core.MediaType: java.util.TreeMap
> createParametersMap(java.util.Map)>{color}
> {color:#d04437}<javax.ws.rs.core.MediaType: void
> <init>(java.lang.String,java.lang.String,java.lang.String,java.util.Map)>{color}
> {color:#d04437}<javax.ws.rs.core.MediaType: void
> <init>(java.lang.String,java.lang.String,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.MediaType: javax.ws.rs.core.MediaType
> withCharset(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
> addAll(java.lang.Object,java.util.List)>{color}
> {color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
> addAll(java.lang.Object,java.lang.Object[])>{color}
> {color:#d04437}<javax.ws.rs.core.MultivaluedMap: void
> addFirst(java.lang.Object,java.lang.Object)>{color}
> {color:#d04437}<javax.ws.rs.core.MultivaluedMap: boolean
> equalsIgnoreValueOrder(javax.ws.rs.core.MultivaluedMap)>{color}
> {color:#d04437}<javax.ws.rs.core.NewCookie: java.util.Date
> getExpiry()>{color}
> {color:#d04437}<javax.ws.rs.core.NewCookie: boolean isHttpOnly()>{color}
> {color:#d04437}<javax.ws.rs.core.NewCookie: void
> <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,boolean,boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.NewCookie: void
> <init>(javax.ws.rs.core.Cookie,java.lang.String,int,java.util.Date,boolean,boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.NewCookie: void
> <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,int,java.lang.String,int,java.util.Date,boolean,boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder allow(java.util.Set)>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder
> links(javax.ws.rs.core.Link[])>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder
> entity(java.lang.Object,java.lang.'annotation'.Annotation[])>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder
> link(java.net.URI,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder
> link(java.lang.String,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder
> replaceAll(javax.ws.rs.core.MultivaluedMap)>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder
> variants(javax.ws.rs.core.Variant[])>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder encoding(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response$ResponseBuilder:
> javax.ws.rs.core.Response$ResponseBuilder allow(java.lang.String[])>{color}
> {color:#d04437}<javax.ws.rs.core.Response$Status$Family:
> javax.ws.rs.core.Response$Status$Family familyOf(int)>{color}
> {color:#d04437}<javax.ws.rs.core.Response:
> javax.ws.rs.core.Response$ResponseBuilder accepted(java.lang.Object)>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.util.Set
> getAllowedMethods()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Link
> getLink(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response:
> javax.ws.rs.core.Response$StatusType getStatusInfo()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MultivaluedMap
> getHeaders()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MultivaluedMap
> getStringHeaders()>{color}
> {color:#d04437}<javax.ws.rs.core.Response:
> javax.ws.rs.core.Response$ResponseBuilder accepted()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
> readEntity(javax.ws.rs.core.GenericType,java.lang.'annotation'.Annotation[])>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
> readEntity(javax.ws.rs.core.GenericType)>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.util.Map getCookies()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.net.URI getLocation()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.Link$Builder
> getLinkBuilder(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.util.Locale
> getLanguage()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: int getLength()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.util.Date getDate()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.util.Set getLinks()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
> readEntity(java.lang.Class,java.lang.'annotation'.Annotation[])>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.util.Date
> getLastModified()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: boolean bufferEntity()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.lang.Object
> readEntity(java.lang.Class)>{color}
> {color:#d04437}<javax.ws.rs.core.Response: boolean
> hasLink(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.EntityTag
> getEntityTag()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: javax.ws.rs.core.MediaType
> getMediaType()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: void close()>{color}
> {color:#d04437}<javax.ws.rs.core.Response: java.lang.String
> getHeaderString(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Response: boolean hasEntity()>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> uri(java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: java.net.URI
> build(java.lang.Object[],boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> resolveTemplates(java.util.Map,boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> resolveTemplateFromEncoded(java.lang.String,java.lang.Object)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: java.lang.String
> toTemplate()>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> fromLink(javax.ws.rs.core.Link)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> resolveTemplates(java.util.Map)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> fromMethod(java.lang.Class,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: java.net.URI
> buildFromMap(java.util.Map,boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> resolveTemplate(java.lang.String,java.lang.Object)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> resolveTemplatesFromEncoded(java.util.Map)>{color}
> {color:#d04437}<javax.ws.rs.core.UriBuilder: javax.ws.rs.core.UriBuilder
> resolveTemplate(java.lang.String,java.lang.Object,boolean)>{color}
> {color:#d04437}<javax.ws.rs.core.UriInfo: java.net.URI
> resolve(java.net.URI)>{color}
> {color:#d04437}<javax.ws.rs.core.UriInfo: java.net.URI
> relativize(java.net.URI)>{color}
> {color:#d04437}<javax.ws.rs.core.Variant: void
> <init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Variant: void
> <init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Variant: void
> <init>(javax.ws.rs.core.MediaType,java.lang.String,java.lang.String,java.lang.String,java.lang.String)>{color}
> {color:#d04437}<javax.ws.rs.core.Variant: java.lang.String
> getLanguageString()>{color}
> {color:#d04437}<javax.ws.rs.ext.FactoryFinder: void <clinit>()>{color}
> {color:#d04437}<javax.ws.rs.ext.FactoryFinder: java.util.logging.Logger
> access$000()>{color}
> {color:#d04437}<javax.ws.rs.ext.RuntimeDelegate:
> javax.ws.rs.core.Link$Builder createLinkBuilder()>{color}
> {color:#d04437} {color}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)