逆引きマニュアル: IntelliJ IDEA: 初期設定

投稿日: 更新日:

インストール(macOS)

コミュニティ版 ideaIC-2017.3.3.dmg で試しています。

  1. .dmgファイルを開く
  2. アプリケーションをドラッグして、/Applications/にコピー。
  3. アプリケーションを開く
  4. Import IntelliJ IDEA settings from: と聞かれる
    • 初回はDo not import settingsで問題ない
  5. プライバシーポリシーが表示されるので、中身を読んでAccept
  6. UIのテーマを選択
    • どちらでもあとで変えられるので問題ないが、Darculaの方をよく見かける。
    • あとで変える場合は、Preferences | Appearance & Behavior | Appearance
  7. キーマップの選択
    • 初めて使う場合はデフォルトのAdapted for OS Xでいいかも。
    • あとで変える場合は、Preferences | Keymap
  8. 起動スクリプトを作るかどうかを聞かれる
    • 自分はCUIから起動できると嬉しいので、設定する。
    • あとで作る場合は、Tools | Create Command-Line Launcher
  9. デフォルトプラグインの選択
    • ビルドツール
      • デフォルトのAnt, Maven, Gradleで問題なさそう。
    • バージョンコントロール
      • デフォルトではCVS, Git, GitHub, Mercurial, Subversion
      • CVSとMercurialは使う予定はなさそうなのでオフ
    • テストツール
      • JUnit, TestNG-J, Coverageの3つがデフォルト。
        • CoverageはIntelliJ IDEA組み込み、EMMA, JaCoCoの3つがある模様1
      • TestNGは使う予定はなさそうなのでオフ。
    • Swing
      • 使う予定はなさそうなのでオフ
    • Android
      • 使う予定はなさそうなのでオフ
    • その他のツール
      • Bytecode Viewer
      • Eclipse(移行ツールのことかな?)
      • Java Stream Debugger
      • Task Management
      • Terminal
      • YAML
      • XSLT and XPath
      • 分からないけど全てオン
    • プラグイン開発
      • 使う予定はなさそうなのでオフ
  10. Featured plugins(注目のプラグイン?)
    • Scala
      • 使う予定はないので入れない
    • IdeaVim
      • 面白そうだけど入れない
    • IDE Features Trainer
      • 最初なので入れてみる

日本語化

IntelliJ や PhpStorm などの日本語化参照。

プラグイン

あとで入れてみる予定。

設定(Preferences / Setting)

プリファレンスのうち、現在のプロジェクトだけに影響するものは、マークが付きます2。 Welcome画面の場合は、デフォルト設定に影響します。

Appearance & Behavior

System Settings

  • Reopen last project on startup: オフ
    • デフォルトでは最後に使用したプロジェクトを起動するが、不要なケースが多いため。

Editor

General

Auto Import
  • Exclude from Import and Completion(補完対象から除外)
    • 必要ならクラス、パッケージを追加。

Color Scheme

General
  • Errors and Warnings
    • (検討中)以下のようにWarningとWeak warningを入れ替える。DarcuraテーマだとWarningが目立たず、Weak warningが目立ちすぎるので。。。
    • Warning
      • Error stripe mark: 756D56
      • Effects: AEAE80, Underwaved
    • Weak warning
      • Background: 52503A
      • Error stripe mark: BE9117

Code Style

  • Scheme: Default IDE(IDEの設定として管理される)
  • Formatter Control
    • Enable formatter markers in comments: オン
Java
  • Imports
    • Class count to use import with '*': 99
      • '*'でインポートすべきではないため。
    • Names count to use static import with '*': 1
      • 逆にstaticの場合は常に'*'を使うようにしている(いいんだっけ)

Inspections

  • General
    • Duplicated Code
      • Testsを'No highlighting, only fix'としている。
      • テストコードは無理に重複を排除せず、シンプルにしたほうがいいため。
  • Internationalization
    • Non-ASCII characters
      • Testsを'No highlighting, only fix'としている。
      • プロジェクトによるが、テストクラスのみ、日本語を許容している。
  • Java
    • Declaration redundancy
      • Actual method parameter is the same constant: Weak Warning
        • パラメータが全て同じ定数の場合の警告。あえてそうしているケースもあるため、弱めた。
      • Declaration access can be weaker: Weak Warning
        • Testsを'No highlighting, only fix'としている。
        • 公開APIとして作ったものが警告になってしまうため。
      • Unused declaration
        • Entry points
          • Annotationsに以下のアノテーションを追加
            • mockit.Mock(JMockit)
    • Error handling
      • Catch block may ignore exception
        • 2番目のDo not warn when 'catch' block is not emptyをオフ
          • catchの引数が使われないときに警告を出すため。
    • Javadoc
      • Declaration has Javadoc problems
        • Testsを'No highlighting, only fix'としている。
        • Class
          • Scope: public
            • publicクラスはJavadocが必須
        • Method
          • Scope: public
            • publicメソッドはJavadocが必須
        • Inner class
          • Scope: public
            • public内部クラスはJavadocが必須
    • Probable bugs
      • 'equals()' method which does not check class of parameter: オフ
        • Apache Commons LangのEqualsBuilder#reflectionEquals()を使うと警告になるた>め。実際は良きに計らえしてくれるので問題ない。
        • ValueObjectは別の方法で作成するため不要になるかも。
      • @NotNull/@Nullable problems
        • 自前で@NotNull/@Nullableアノテーションを定義しているときは、Configure annotationsで追加する。あるいはデフォルトを設定する。
    • toString() issues
      • Class does not override 'toString()' method: オン

File and Code Templates

Files -> Class

以下のように、finalを付ける。

#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end
#parse("File Header.java")
public final class ${NAME} {
}

File Encodings

ファイルのエンコーディングが設定可能。

Version Control

Confirmation

  • When file are created: Do not add
    • 一部のファイルだけコミット対象にできるGitのメリットが失われるため。

Build, Execution, Deployment

Compiler

公式サイト

マニュアル

  • Java
  • ide: まだありません。
  • jetbrains: まだありません。
  • IntelliJ IDEA