Useful Tools for Developing SystemML:
IntelliJ can be used since it provides great support for mixed Java and Scala projects as described here.
To get started in Eclipse, import SystemML's pom.xml file as an existing Maven project. After import is completed, the resulting Eclipse installation should include two maven connectors.
The Scala IDE 4.0.0 plugin for Eclipse is known to work for mixed Java and Scala development in Eclipse IDE for Java Developers Luna SR2. Release 4.0.0 of the Scala IDE for Eclipse plugin can be downloaded here and then installed through Eclipse's ‘Install New Software’ menu item. Only the Scala IDE and ScalaTest components are needed.
Note the corresponding Eclipse project needs to include the Scala nature. Typically this occurs automatically during project import but also can be invoked directly by right clicking on the systemml project node in the Eclipse Package Explorer view.
Since the core SystemML code is written in Java, developers may prefer not to use Eclipse in a mixed Java/Scala environment. To configure Eclipse to skip the Scala code of SystemML and avoid installing any Scala-related components, Maven lifecycle mappings can be created. The simplest way to create these mappings is to use Eclipse's quick fix option to resolve the following pom.xml errors which occur if Maven Integration for Scala is not present.
The lifecycle mappings are stored in a workspace metadata file as specified in Eclipse's Maven Lifecycle Mappings Preferences page. The pom.xml file itself is unchanged which allows the Scala portion to be built outside of Eclipse using mvn command line.
Please see below how to resolve some compilation issues that might occur after importing the SystemML project:
Since Scala IDE bundles the latest versions (2.10.5 and 2.11.6 at this point), you need do add one in Eclipse Preferences -> Scala -> Installations by pointing to the lib/ directory of your Scala 2.10.4 distribution. Once this is done, select all Spark projects and right-click, choose Scala -> Set Scala Installation and point to the 2.10.4 installation. This should clear all errors about invalid cross-compiled libraries. A clean build should succeed now.
Change IDE scala version
project->propertiest->scala compiler -> scala installation to
Fixed scala Installation: 2.10.5
mvn package, and do
project -> refresh
Except scala IDE pulgin install, please make sure get update from “http://alchim31.free.fr/m2e-scala/update-site” to update maven connector for scala.