GoogleCloudPlatform / GoogleCloudPlatform/cloud-opensource-java

Linkage Checker to provide a diagnosis for linkage error

オープン
#487 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
enhancement p2
主要言語
Java
スター
163
フォーク
80
PR マージ指標
30日以内にマージされた PR はありません

説明

# Background

When there is a linkage error, people need to check why it happens ([Example case of google-api-client-1.27.0](https://github.com/GoogleCloudPlatform/cloud-opensource-java/issues/468)). It would be nice if the tool provides a diagnosis.

# Example Information

With the case of google-api-client

- `GoogleApacheHttpTransport` in `google-api-client:1.27.0` uses `com.google.api.client.http.apache.ApacheHttpTransport$Builder` but the class is not found in the class path. (The tool already has this information)
- `com.google.http-client:google-http-client:1.27.0` has the missing class. But the class path has `com.google.http-client:google-http-client:1.28.0` instead. (new information)

# Test Case

```
LinkageChecker -a com.google.cloud:google-cloud-bigtable:0.81.0-alpha,com.google.cloud:google-cloud-core-http:1.63.0
```

# Data

- With #498, Artifact.getFile().getPath() gives jar file path.
- ClassDumper already has jarFileToClasses and classToJarFiles. This enhancement may leverage these maps.

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。