GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java
False Negative in Duplicate Class Files appearing in one or more JAR files
- Linguagem predominante
- Java
- Estrelas
- 163
- Forks
- 80
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Descrição
While investigating #1401 , I noticed that there might be a false negative in Linkage Checker.
In attempt to fix the bug (https://github.com/GoogleCloudPlatform/cloud-opensource-java/commit/def9c4ac25304685058630cc79c607bd56479acc), it generated more errors in our BOM dashboard than currently shown in master. Such as

The class path has two JARs that has `javax.mail.internet.InternetHeaders`.
- In the class path com.google.appengine:appengine-api-1.0-sdk:1.9.71 comes before javax.mail:mail:1.4.3.
- com.google.appengine:appengine-api-1.0-sdk:1.9.71 has `javax.mail.internet.InternetHeaders$InternetHeader`.
- javax.mail:mail:1.4.3 has javax.mail.internet.InternetHeaders. Its inner class `javax.mail.internet.InternetHeaders$matchEnum` references `javax.mail.internet.InternetHeaders$InternetHeader`'s field line
### Javap
appengine-api-1.0-sdk-1.9.71.jar's InternetHeaders does not have line field
```
suztomo-macbookpro44% javap -v -cp /Users/suztomo/.m2/repository/com/google/appengine/
appengine-api-1.0-sdk/1.9.71/appengine-api-1.0-sdk-1.9.71.jar javax/mail/internet/InternetHeaders
|grep line |grep '#'
#115 = Utf8 line
```
mail-1.4.3's `InternetHeaders$matchEnum` references the missing field.
```
suztomo-macbookpro44% javap -v -cp /Users/suztomo/.m2/repository/javax/mail/mail/1.4.3/mail-
1.4.3.jar 'javax/mail/internet/InternetHeaders$matchEnum' |grep line |grep '#'
#6 = Fieldref #21.#65 // javax/mail/internet/InternetHeaders$matchEnum.want_line:Z
#12 = Fieldref #19.#71 // javax/mail/internet/InternetHeaders$InternetHeader.line:Ljava/lang/String;
```
Guia de contribuição
Avaliação
Esta issue ainda não foi avaliada.