Saturday 7 November 2020

How to call Kotlin code in Java Application: Java and Kotlin Interoperability


Java is fully compatible with Kotlin . So to call java code in kotlin first write following java and 
kotlin code two separate file .

KotlinApplication.kt

fun main(args:Array<String>){

println("Kotlin Application Started ..... ")

}

fun navigateToKotlinApplication(){

println("Welcome in Kotlin Application ..... ")

}

JavaApplication.java

public class JavaApplication {

  public static void main(String []args){

  System.out.println("Java Application Started ...... ");
  System.out.println("---------------------------------- ");
  System.out.println("Navigating to Kotlin Application ......");
  System.out.println("--------------------------------- ");

  KotlinApplicationKt.navigateToKotlinApplication();

  }
}

Commands to compile and run above two code 

1 . First Compile KotlinApplication.kt file 

     kotlinc KotlinApplication.kt

Note :-  After Compiling of KotlinApplication.kt  kotlinc compiler conventionally generate KotlinApplicationKt.class   by default  kotlinc compiler append Kt in suffix of kotlin file name.

2 .  Running KotlinApplicationKt.class file 

      kotlin KotlinApplicationKt

3 . Compiling Java code JavaApplication.java 

    javac JavaApplication.java

4 . Running Java Application
     
    java  JavaApplication


Output in Console.....





How to call Java code in Kotlin Application: Java and Kotlin Interoperability


Java is fully compatible with Kotlin . So to call java code in kotlin first write following java and kotlin code two separate file .

KotlinApplication.kt

fun main(args:Array<String>){
println("Kotlin Application Started ....... ");

var javaApplication = JavaApplication();

println("-------------------------------------------");
println("Navigating to Java Application  ....... ");
println("-------------------------------------------");

javaApplication.naivgateToJavaApplication();


}

JavaApplication.java

public class JavaApplication{

     public JavaApplication(){}

     public static void main(String []args){
    
     System.out.println("Java Application Started ..... ");
   
}

public void naivgateToJavaApplication(){

     System.out.println("Welcome in Java Application .......");

}

}


To Compile and run above two file there is two method . 

First Method to Compile and run java code in kotlin application 

Compile using kotlinc and Running using Kotlin


1 . Complie java file 
javac JavaApplication.java

2 .Running java file  
java JavaApplication

3.Compling kotlin file by setting class path of JavaApplication.class file 
kotlinc -cp . KotlinApplication.kt 

Note :-
After Compiling of KotlinApplication.kt  kotlinc compiler conventionally generate 
KotlinApplicationKt.class
by default  kotlinc compiler append Kt in suffix of kotlin file name. 


4. Now at last Runing KotlinApplicationKt.class by seting class path of JavaApplication.class file 
 kotlin -cp . KotlinApplicationKt

Output in Console ......























Second Method to Compile and run java code in kotlin application 

Complie and package into java jar using kotlinc and Runing  java jar using Java

Running with Java Jar using Java

1 .Compile java file 

javac JavaApplication.java

2 .Running java file 

java  JavaApplication

3.Compling kotlin file by setting class path of JavaApplication.class file 

kotlinc -cp . KotlinApplication.kt -include-runtime -d kotlinapplication.jar

4. Updating kotlinapplication.jar with JavaApplication.class file 

jar -uf KotlinApplication.jar JavaApplication.class

5. Running  KotlinApplication.jar file 

java -jar KotlinApplication.jar


Output in Console .....






First program to print Hello World message in Kotlin


Write following code in any text editor save the file .

Kotlin.kt

import java.time.LocalDateTime;

fun main (args : Array<String>){

val currentTime = LocalDateTime.now();

println("Hello Kotlin World ....")

println("Welcome in Kotlin World ...currtent Time is ::  $currentTime")

}


Command to compile code and package in jar

kotlinc Kotlin.kt -include-runtime -d Kotlin.jar

Command to run Kotlin.jar file

java -jar Kotlin.jar


Output Console .....


Hello Kotlin World ....
Welcome in Kotlin World ...currtent Time is ::  2020-10-21 T 12:31:21.879