環境
Ubuntu
VSCode
やること
- Java, Maven, Intellij インストール
- vscodeの設定
- 実行確認
- エラー対処法
参考
インストール
以下、aptアップデートとjavaインストールとjavaバージョン確認をまとめて行うので注意です。
Java
インストール
sudo apt update && sudo apt install default-jdk && java -version
openjdk version "11.0.6" 2020-01-14
OpenJDK Runtime Environment (build 11.0.6+10-post-Ubuntu-1ubuntu118.04.1)
OpenJDK 64-Bit Server VM (build 11.0.6+10-post-Ubuntu-1ubuntu118.04.1, mixed mode)
JAVA_HOME 設定
jdkのインストール場所は/usr/lib/jvm/にあるのでこちらのパスを〇〇rcファイルへ追記する
# ------------------------------------------------------------------
# java
# ------------------------------------------------------------------
export JAVA_HOME=/usr/lib/jvm/java-version-xxx-jdk
export PATH="$PATH:$JAVA_HOME/bin"
Maven
####インストール
sudo apt update && apt install maven && mvn -version
Apache Maven 3.6.0
Maven home: /usr/share/maven
Java version: 11.0.6, vendor: Ubuntu, runtime: /usr/lib/jvm/java-11-openjdk-amd64
Default locale: ja_JP, platform encoding: UTF-8
OS name: "linux", version: "4.15.0-54-generic", arch: "amd64", family: "
IntelliJ IDEA Community Edition
####インストール
① PPAから
sudo add-apt-repository ppa:mmk2410/intellij-idea-community
sudo apt update
sudo apt install intellij-idea-community
② ソフトウェアセンターから
intellijで検索してインストールをクリック
VSCode
インストール
wget -q https://packages.microsoft.com/keys/microsoft.asc -O- | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://packages.microsoft.com/repos/vscode stable main"
sudo apt update && sudo apt install code
VSCodeの設定
拡張機能
Java Extension Pack
- 何も考えずにこれを入れる。
- Java開発に使うツールが必要最低限まとめてインストールされます。
https://marketplace.visualstudio.com/items?itemName=vscjava.vscode-java-pack
Code Runer
- 選択した範囲をデバッグできます。
- Ctrl + Alt + N でCode Runnerを実行できます。
settings.json
-
java.home
JAVAをVSCode上で実行できるようになります。 -
maven.executable.path
MavenコマンドがVSCode上で実行できるようになります。 -
code-runner.runInTerminal
terminalでCodeRunnerの入出力を可能にします。
code-runner.executorMap
code runner実行時のコマンドを設定します。
デフォルトの設定だと対象のファイルをfileNameWithoutExt
拡張子なしと見なすため、デバッグの実行場所によってはエラー( java.lang.NoClassDefFoundError) となることがあります。これは$fileName
とすることで回避できます
which mvn
> /usr/bin/mvn
[
// Java
"java.home":"/usr/lib/jvm/java-version-xxx-jdk",
// Maven
"maven.executable.path": "/usr/bin/mvn",
// Code Runner
"code-runner.runInTerminal": true,
]
実行確認
- VSCodeを使います。
- 適当なディレクトリを作成してHelloWorld.javaファイルを作成する。
- メインメソッドがある箇所がデバックされます。
メインメソッド
public static void main(String[] args)
これを必ず記述します。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
実行
以下のどちらでも実行可能。コンパイル&実行されます。
- Code Runnerで実行する ( Ctrl + Alt + N)
- Run > Start Debugging ( F5 )
[Done] exited with code=1 in 1.227 seconds
[Running] cd "/home/user/java_lessons/hello_java/" && javac HelloWorld.java && java HelloWorld
Hello World!
メインメソッドが無いと
次のようになります。
エラー: メイン・メソッドがクラスHelloWorldで見つかりません。次のようにメイン・メソッドを定義してください。
public static void main(String[] args
エラー例
対処法など
The compiler compliance specified is x.x but a JRE x.y is used
.settings/org.eclipse.jdt.core.prefs
の該当の数字をJREのバージョンに合わせる
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.targetPlatform= x.y
org.eclipse.jdt.core.compiler.compliance= x.y
org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore
org.eclipse.jdt.core.compiler.processAnnotations=disabled
org.eclipse.jdt.core.compiler.release=disabled
org.eclipse.jdt.core.compiler.source= x.y