0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

コンピューターシステム株式会社Advent Calendar 2024

Day 22

VSCode で Java の依存ライブラリのソースコードを見る方法

Last updated at Posted at 2024-12-22

VSCode で依存ライブラリのソースコードが知らない間に見られるようになったそうなので、操作感をまとめてみます。

デモ用の Java プロジェクトを作成

シンプルな Maven のプロジェクトを作成し、以下のコードを追加 or 修正します。

pom.xml の修正

Jakarta JSON Processing を Maven の dependency に追加します。

pom.xml
    <dependencies>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-csv</artifactId>
            <version>1.12.0</version>
        </dependency>
    </dependencies>

Java コードの実装

以下のサンプルコードを実装します。

Main.java
    public static void main(String[] args) throws IOException {
        // CSVファイル書き込み
        try (CSVPrinter printer = new CSVPrinter(new FileWriter("data.csv"), CSVFormat.DEFAULT)) {
            printer.printRecord("id", "name", "score");
            printer.printRecord(1, "Alice", 95);
            printer.printRecord(2, "Bob", 82);
            printer.printRecord(3, "Charlie", 78);
        }

        // CSVファイル読み込み
        CSVFormat format = CSVFormat.Builder.create(CSVFormat.DEFAULT).setHeader().build();
        try (CSVParser parser = new CSVParser(new FileReader("data.csv"), format)) {
            parser.forEach(record -> System.out.printf("%s: %s点%n", record.get("name"), record.get("score")));
        }
    }

この時点で CSVPrinter のクラスを Ctrl+Click するとコンパイルされる前の Java のソースコードで確認できます。

image.png

デバッグ時にステップインした場合でも、該当の行でステップ実行が実施できます。

image.png

なかなか良いです。

もしデコンパイルされた Java が表示される場合

基本的にはない想定ですが、 Maven のローカルリポジトリに *-sources.jar が存在していないと、以下のようにデコンパイルされた Java のコードが開かれます。

image.png

上のような状態の場合、 class ファイルを開いた状態で右クリックし、「Attach Source...」からローカルの Maven リポジトリに入っている *-sources.jar を選択すれば、ソースコードで確認することができます。

また、 *-sources.jar ファイルがない場合は、以下の mvn コマンドで追加できます。

pom.xml があるディレクトリで実施
mvn dependency:sources

pom.xml からも依存ライブラリの pom.xml に飛べる

pom.xml の dependency の箇所で Ctrl を押しながらマウスオーバーすると、dependency の部分が丸ごとリンクになって、クリックでライブラリの pom.xml が確認できます。

image.png

Maven のローカルリポジトリにある pom.xml が直で開かれるようになっていました。

image.png

感想

もう、他の IDE との差分がどんどんなくなってきている。 VSCode の進化早し。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?