Android Session creation failure eventhough capabilities are correct

For full appium log : https://gist.github.com/Balakumar-14/0fc7b5c20e7ac0cf0b2f8efde51fd10e

Appium version - 2.1.3 Uiautomator version - 2.29.6 execute-driver version - 2.0.6

Here, the app is invoked, but the driver is not returned from appium server. It hits the exception without any detailed description.

So, someone help me with the failure exception Thanks in advance!

org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Possible causes are invalid address of the remote server or browser start-up failure. 
Host info: host: 'bala-14246', ip: 'fe80:0:0:0:c49:4fac:b0f9:a413%en0'
Build info: version: '4.12.1', revision: '8e34639b11'
System info: os.name: 'Mac OS X', os.arch: 'x86_64', os.version: '10.16', java.version: '12'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [null, newSession {capabilities=[{appium:appActivity=com.zoho.accounts.oneauth.v2.ui.login.WalkthroughActivity, appium:appPackage=com.zoho.accounts.oneauth, appium:udid=emulator-5554, appium:automationName=UiAutomator2, appium:newCommandTimeout=3000, appium:noReset=false, platformName=ANDROID, appium:uiautomator2ServerInstallTimeout=120000}], desiredCapabilities=Capabilities {appActivity: com.zoho.accounts.oneauth.v..., appPackage: com.zoho.accounts.oneauth, appium:udid: emulator-5554, automationName: UiAutomator2, newCommandTimeout: 3000, noReset: false, platformName: ANDROID, uiautomator2ServerInstallTimeout: 120000}}]
Capabilities {appActivity: com.zoho.accounts.oneauth.v..., appPackage: com.zoho.accounts.oneauth, appium:udid: emulator-5554, automationName: UiAutomator2, newCommandTimeout: 3000, noReset: false, platformName: ANDROID, uiautomator2ServerInstallTimeout: 120000}
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:620)
	at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:274)
	at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:163)
	at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:89)
	at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:101)
	at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:113)
	at com.appium.manager.AppiumDriverManager.createAppiumDriver(AppiumDriverManager.java:61)
	at com.appium.manager.AppiumDriverManager.initialiseDriver(AppiumDriverManager.java:47)
	at com.appium.manager.AppiumDriverManager.startAppiumDriverInstanceWithUDID(AppiumDriverManager.java:113)
	at com.appium.manager.AppiumParallelMethodTestListener.allocateDeviceAndStartDriver(AppiumParallelMethodTestListener.java:157)
	at com.appium.manager.AppiumParallelMethodTestListener.beforeInvocation(AppiumParallelMethodTestListener.java:129)
	at org.testng.internal.invokers.InvokedMethodListenerInvoker.invokeListener(InvokedMethodListenerInvoker.java:56)
	at org.testng.internal.invokers.BaseInvoker.runInvokedMethodListeners(BaseInvoker.java:67)
	at org.testng.internal.invokers.TestInvoker.invokeMethod(TestInvoker.java:642)
	at org.testng.internal.invokers.TestInvoker.invokeTestMethod(TestInvoker.java:221)
	at org.testng.internal.invokers.MethodRunner.runInSequence(MethodRunner.java:50)
	at org.testng.internal.invokers.TestInvoker$MethodInvocationAgent.invoke(TestInvoker.java:969)
	at org.testng.internal.invokers.TestInvoker.invokeTestMethods(TestInvoker.java:194)
	at org.testng.internal.invokers.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:148)
	at org.testng.internal.invokers.TestMethodWorker.run(TestMethodWorker.java:128)
	at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
	at org.testng.TestRunner.privateRun(TestRunner.java:829)
	at org.testng.TestRunner.run(TestRunner.java:602)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:437)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:475)
	at org.testng.internal.thread.ThreadUtil.lambda$execute$0(ThreadUtil.java:58)
	at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:835)
Caused by: java.lang.NoSuchMethodError: com.google.common.collect.ImmutableMap.of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableMap;
	at org.openqa.selenium.chrome.AddHasCasting.getAdditionalCommands(AddHasCasting.java:37)
	at org.openqa.selenium.remote.Dialect.lambda$bindAdditionalCommands$1(Dialect.java:62)
	at java.base/java.lang.Iterable.forEach(Iterable.java:75)
	at org.openqa.selenium.remote.Dialect.bindAdditionalCommands(Dialect.java:60)
	at org.openqa.selenium.remote.Dialect.access$100(Dialect.java:26)
	at org.openqa.selenium.remote.Dialect$1.getCommandCodec(Dialect.java:30)
	at io.appium.java_client.remote.AppiumCommandExecutor.createSession(AppiumCommandExecutor.java:191)
	at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:250)
	at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:602)
	... 30 more