jarは”./gradle”ディレクトリに入ってるのに、なぜかプロジェクトからは認識されなかった…
普段のJavaのコーディングにはIntelliJ IDEAを使っているのですが、たまにはVSCodeを使ってみようと思って触っていたのですが…。
以下の環境でちょっとしたコーディングを行おうとしていました。
エディタ: Visual Studio Code ソフトウェアバージョン: Java 17 Spring Boot 3.1.1 gradle 8.1.1
勉強がてらAWS SDKを使うコードを書きたかったので、AWSの公式サイト(url)の手順に従ってbuild.gradleに以下を追加。
![](https://minamino-heya.com/wp-content/uploads/2023/08/vscode-gradle-library-install-01-1024x239.png)
dependencies { // AWSのチュートリアルを参考に追加 implementation platform('software.amazon.awssdk:bom:2.20.56') implementation 'software.amazon.awssdk:s3' // ここまで // 以下省略
IntelliJならこれでライブラリが取得されてコード補完機能にて候補が出てくるのですが、VSCodeだと補完候補に現れず、一向にimportできない状態となっていました。
![](https://minamino-heya.com/wp-content/uploads/2023/08/vscode-gradle-library-install-02-1024x233.png)
完全修飾名を手動で入力しても該当のクラスが見つからず、cannot be resolved.のエラーメッセージが表示されます。さてどうしたものか…。
解決した方法
先に解決した方法を記載しますが、拡張機能として提供されている
Language Support for Java(TM) by Red Hat
をインストールすることで解決しました。
![](https://minamino-heya.com/wp-content/uploads/2023/08/vscode-gradle-library-install-03-1024x261.png)
インストールしてしばらくすると、VSCodeでも補完候補にとして表示され、import可能な状態になります。
![](https://minamino-heya.com/wp-content/uploads/2023/08/vscode-gradle-library-install-04-1024x278.png)
これで無事SDKを使ったコーディングができるようになりました。
他に入れてたほうがよさそうな拡張機能
VSCodeでJavaのコーディングを行う場合、以下の拡張機能も入れておくことをお勧めします。
Project Manage for Java
![](https://minamino-heya.com/wp-content/uploads/2023/08/vscode-gradle-library-install-05-1024x247.png)
こちらを導入すると、エクスプローラメニューにJavaプロジェクトをパッケージ階層で表示されたメニューが使えるようになるほか、プロジェクトが参照している外部ライブラリも表示されるようになります。
これでライブラリが取り込まれているのかどうかが可視化されるようになります。
![](https://minamino-heya.com/wp-content/uploads/2023/08/vscode-gradle-library-install-06-1024x342.png)
VSCodeを使っていて、gradleで導入したいライブラリの定義を追加したけど、うまくいかない(ライブラリが認識されない)場合、拡張機能の導入が可能なら
Language Support for Java(TM) by Red Hat
を入れてみてください。