Can I use Scala and Java in the same project? I am new with programming so it\'s a litte bit confusing for me.
From my research I have read that the best combination to
Q. Can I use Scala and Java in the same project?
Sure, you can. You can use most of the JVM based languages together in the same project.
Q. How do I go about it?
The basic idea is to configure your build tool to compile both the Java and the Scala code. For example, if you use Maven, you can use the Maven Scala plugin for compiling Scala code. There are two options for using this plugin:
I prefer option 2 since I have found Scala compilation to be quite slow (although the performance has been improving steadily with each new Scala version) so using the Maven Compiler plugin reduces the overall build time.
Q. Is it not possible to use Scala with Spring or Java with Lift?
Sure you can use Scala with Spring and Java with Lift. You can check my sample application that uses Java, Scala and Spring.
You will notice that the sample application has separate source folders for Java and Scala code, although that is not mandatory and can be configured in the Maven configuration.
Q. In case I use Scala, should I have the whole configuration in Scala code?
I am assuming you mean Spring configuration. It is entirely up to you whether you wish to configure Spring using XML files, Java classes or Scala classes. All approaches work. It depends on which style you are more comfortable with and prefer.
You can even spread the configuration across multiple classes or even a combination of XML and classes.