Child pages
  • Getting Started with IntelliJ IDEA Scala Plugin
Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Currently, IntelliJ IDEA Scala plugin is in beta stage and is being actively developed. Here is the list of what you will need to try it:

After you have downloaded, installed and configured all the prerequisites, follow this simple procedure to get the Scala plugin up and running.

  1. Run IntelliJ IDEA. On the Welcome Screen, click Open Plugin Manager.
  2. Click Available tab and type Scala in the Search box to quickly locate plugin in the list.
  3. Right-click plugin name, select Download and Install from the menu, and restart IntelliJ IDEA to apply the changes.
  4. After IntelliJ IDEA is back, open Plugin Manager again to examine the list of installed plugins.

    If everything is OK, there should be Scala plugin, listed in black, with a tick mark next to its name, all this meaning the plugin is installed, enabled and is working OK. If there's no tick mark, or plugin name is listed in red, or you can't find it at all - there may be some problem you need to address, like getting the latest IntelliJ IDEA EAP version.

If everything is fine, you're ready to create the Scala project with IntelliJ IDEA.

  1. Back to the Welcome Screen, click Create New Project. The good old IntellIJ IDEA New Project wizard apperas.
  2. All you need is a Java Module with a name that makes sense, located somewhere you can find it later without spending a whole day digging through your entire hard drive.
    On top of that, pick Scala on the Select Desired Technologies step and specify the path where you installed Scala SDK.

  3. After you complete the wizard, IntelliJ IDEA prompts you whether you want to create an Application or Project level library for the Scala SDK you added. If you plan to create other projects that involve it, select Application - it lets you share it anywhere on the current machine. Otherwise you can go with Project - it does not really matter for this example.

    In the nearest future we're going to streamline the configuration process to avoid putting all scala-related jars in a single library. This should simplify developing liftweb-like applications, imported from Maven repositories that may contain various Scala jars scattered around in different libraries.

  4. Now everything's ready for the first HelloWorld application. Right-click src folder (or press Alt-Ins in default Windows IntelliJ IDEA keymap) and select Scala Object.
  5. Type HelloWorld in the appeared dialog and click OK. Here is our first Scala object.
  6. Now, we're going to make it runnable. There're several ways to achieve that. First off, we can extend the default scala.Application trait. With IntelliJ IDEA advanced code completion (in this case, the Scala Class Names) we don't have to type everything by ourselves. App plus Ctrl+Space gives you neat a and quick choice (see the picture below).

    Or, we can use a more Java-like approach: create main() method inside of object body. Again, IntelliJ IDEA lends us a hand with Live Templates. All we do is type main and press Tab. IntelliJ IDEA expands this macro to a complete well-formed main() method body.
  7. Let's teach the application to do some work. If you're familiar with IntelliJ IDEA, you should probably be aware of that running a simple Java application is just a matter of pressing Ctrl-Shift-F10 (on default Windows keymap). Good news is that it works equally well for Scala applications. Note the tiny green mark on the HelloWorld object icon - it means that it can be run just as a native java application.
    All we have to do is to type the code that displays the trivial Hello World message and then press Ctrl-Shift-F10. The application output is displayed in the console.

    This concludes the getting started with Scala IntelliJ IDEA plugin at the first glance. Hope it gives you a good kick to start exploring it for yourself, and, of course, reading this space - you can find more useful information about other helpful plugin features, like Java/Scala cross-language interoperability which includes refactorings, coding assistance and many more.


  • No labels