Hello there!
I am trying to run akka-remoting and see issues when I try to run it on separate JVM process
$ java -jar remoting-separate-jvm-1.0-SNAPSHOT-jar-with-dependencies.jar com.harit.akka.remoting.RemoteApplication ProcessingActor
Hello:com.harit.akka.remoting.RemoteApplication
Exception in thread "main" com.typesafe.config.ConfigException$Missing: No configuration setting found for key 'akka.version'
at com.typesafe.config.impl.SimpleConfig.findKey(SimpleConfig.java:124)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:145)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:151)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:159)
at com.typesafe.config.impl.SimpleConfig.find(SimpleConfig.java:164)
at com.typesafe.config.impl.SimpleConfig.getString(SimpleConfig.java:206)
at akka.actor.ActorSystem$Settings.<init>(ActorSystem.scala:169)
at akka.actor.ActorSystemImpl.<init>(ActorSystem.scala:505)
at akka.actor.ActorSystem$.apply(ActorSystem.scala:142)
at akka.actor.ActorSystem$.apply(ActorSystem.scala:119)
at com.harit.akka.remoting.RemoteApplication$.startProcessingActorSystem(RemoteApplication.scala:29)
at com.harit.akka.remoting.RemoteApplication$.main(RemoteApplication.scala:12)
at com.harit.akka.remoting.RemoteApplication.main(RemoteApplication.scala)
My Remote Application looks like
object RemoteApplication {
def main(args: Array[String]): Unit = {
println("Hello:" + args.head)
if (args.isEmpty || args(1) == "ProcessingActor")
startProcessingActorSystem()
if (args.isEmpty || args(1) == "WatchingActor")
startWatchingActorSystem()
}
def startWatchingActorSystem() = {
val system = ActorSystem("WatchingSystem", ConfigFactory.load("remotecreation.conf"))
val watchingActor: ActorRef = system.actorOf(Props[WatchingActor], "watchingActor")
println("WatchingActorSystem Started")
import system.dispatcher
system.scheduler.scheduleOnce(1 second) {
watchingActor ! TellToProcess
}
}
def startProcessingActorSystem() = {
val system = ActorSystem("ProcessingSystem", ConfigFactory.load("processing.conf"))
println("ProcessingActorSystem Started")
}
}
and I have have dependency on
<dependency>
<groupId>com.typesafe.akka</groupId>
<artifactId>akka-actor_2.11</artifactId>
<version>2.3.11</version>
</dependency>
Which pulls out the dependency on config.
What is wrong here?
Thanks a lot
+ Harit