

## 環境情報

ThinkpadX270 / alter linux  
VScode 1.67.2  
java -version

[code]

    openjdk version "18.0.1.1" 2022-04-22
    OpenJDK Runtime Environment (build 18.0.1.1+2)
    OpenJDK 64-Bit Server VM (build 18.0.1.1+2, mixed mode)
    
[/code]

## 達成したいこと

VScodeにて、以下を実現したいです  
・予測変換、自動フォーマットの有効化  
・VScode内ターミナルからの実行

## 症状

まず、VScode内ターミナルからの実行ができません。  
java コマンドにて、printのみ実行するクラスの実行に失敗します。以下、ログ

[code]

    sh: java: コマンドが見つかりません
    
[/code]

加えて、jdkを入手するように、という旨のポップアップが上がります。

## 試したこと

  1. 拡張機能の確認  
Java Extension Packはインストール済みを確認。再インストール済み。

  2. 個別で立ち上げたターミナルからのテストprintクラス実行  
成功。

  3. パスの確認  
個別で起動したターミナルと同じpathを見ているはずなのに、VScode内ターミナルからはjavaコマンドが実行されない。

以下は、VScode内のターミナルからの実行

[code]

    sh-5.1$ which java
    which: no java in (/app/bin:/app/bin:/app/bin:/usr/bin:/home/a7uku/.var/app/com.visualstudio.code/data/node_modules/bin)
    
[/code]

以下は、個別に立ち上げたzsh内からの実行

[code]

     which java
    /usr/bin/java
    
[/code]

##コメントを受けてのアクション

  1. /etc/shells の確認  
以下、ともに記載あり

[code]

    /bin/zsh
    /usr/bin/zsh
    
[/code]

2.ターミナル（vscode統合ではない）からsh, bash起動、javaコマンド確認  
sh, bashともに起動、javaコマンドテスト成功

## 質問者の原因予測

VScode内部として見ている実行ファイルが違うように見える。  
エイリアスとしての/usr/bin/javaの参照に問題があるように見える。


CC BY-SA 4.0
2022-06-13T15:04:47.843
89372
2022-06-20T15:32:40.130
2022-06-20T15:32:40.130
51783
51783
question
java linux vscode
VScodeにてJavaの実行環境を作りたい(組み込みターミナル内でのjavaコマンド実行、自動フォーマット有効化)


右上に現在使用している shell の名前が出ていますので `zsh` になっているかを確認してみてください。  
おそらく `zsh` にはなっていないと思うので、 `+` アイコンの右のプルダウンメニューを開いて `zsh` を選択してください。

新しくターミナルが開きますので、そこで `java` コマンドを実行してみてください。 `.zshrc`(など `zsh` 固有の設定ファイル)で
`PATH` 設定を行っているのであればコマンドは通るようになると思います。

問題なければ、同じプルダウンメニューの `Select Default Profile` から、デフォルトで起動する shell を `zsh`
に変更します。

参考: [Integrated Terminal in Visual Studio
Code](https://code.visualstudio.com/docs/editor/integrated-terminal)

[![画像の説明をここに入力](https://i.stack.imgur.com/mdP6Z.png)](https://i.stack.imgur.com/mdP6Z.png)


CC BY-SA 4.0
2022-06-13T16:13:56.573
89375
2022-06-13T16:13:56.573
2808
89372
answer