Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

TODO: Improve this documentation 

Jira
serverASF JIRA
serverId5aa69414-a9e9-3523-82ec-879b028fb15b
keyBEAM-5764
 

Create a working Gradle module

(as of IntelliJ 2018.1.6)

...

This should result in a working Gradle project. Build the project by executing the “build” task in the root Gradle module.

Checkstyle

IntelliJ supports checkstyle within the IDE using the Checkstyle-IDEA plugin.

...

Note: Selecting “Check Project” may report some errors from the archetype modules as they are not configured for Checkstyle validation.

Code Style

Uniform formatting for Java and Groovy code is automated by the build through the Spotless Gradle plugin. Instead of relying on the IDE, now you can run ./gradlew spotlessApply to reformat changes prior to commit.

If you want to autoformat in the same way while you are developing, use the Google Java Format plugin.

Code Insight Feature Problems

  • IntelliJ can't load large files (stack overflow post):
    • In IntelliJ 2016 and higher: go to Help → Edit Custom Properties → Paste the following inside the properties file:

      Code Block
      languagetext
      #---------------------------------------------------------------------
      # Maximum file size (kilobytes) IDE should provide code assistance for.
      # The larger file is the slower its editor works and higher overall system memory requirements are
      # if code assistance is enabled. Remove this property or set to very large number if you need
      # code assistance for any files available regardless their size.
      #---------------------------------------------------------------------
      idea.max.intellisense.filesize=2500


  • IntelliJ can't recognize Python files (stack overflow post):
    • Press CTRL + ALT + SHIT + S → Go to Project Settings → Facets → expand Python → click on child → Python Interpreter
    • Project Settings → Modules → Expand module → Python → Dependencies → select Python module SDK