# Unable to initialize driver using appium-java 8

**URL:** <https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038>\
**Category:** Support\
**Created:** [March 31, 2022, 7:07am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038 "2022-03-31T07:07:23Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![hn911](https://discuss.appium.io/user_avatar/discuss.appium.io/hn911/32/8908_2.png) [@hn911](https://discuss.appium.io/u/hn911)\
**Post date:** [March 31, 2022, 7:07am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/1 "2022-03-31T07:07:23Z")

</div>

Hi everyone, I’m trying to test the appium v8.0.0 but cannot initialize the driver correctly.  
Env:  
Java 11  
appium server: 1.21.0  
appium client: 8.0.0

my pom:  
  
4.0.0

```
<groupId>org.example</groupId>
<artifactId>mobile-test-example</artifactId>
<version>1.0-SNAPSHOT</version>

<properties>
    <maven.compiler.source>11</maven.compiler.source>
    <maven.compiler.target>11</maven.compiler.target>
    <appium.version>8.0.0</appium.version>
    <testng.version>7.4.0</testng.version>

</properties>
<dependencies>
<dependency>
    <groupId>org.testng</groupId>
    <artifactId>testng</artifactId>
    <version>${testng.version}</version>
    <scope>test</scope>
</dependency>

    <dependency>
        <groupId>io.appium</groupId>
        <artifactId>java-client</artifactId>
        <version>${appium.version}</version>
    </dependency>
</dependencies>

```

My test code:  
DesiredCapabilities capabilities = new DesiredCapabilities();  
capabilities.setCapability(“platformName”, Platform.ANDROID);  
capabilities.setCapability(“deviceName”, “emulator-5556”);  
capabilities.setCapability(“automationName”, “UIAutomator2”);  
capabilities.setCapability(“app”, “/Users/test/Projects/mobile-test-example/build/wordpress.apk”);  
capabilities.setCapability(“appPackage”, “org.wordpress.android”);  
capabilities.setCapability(“appActivity”, “org.wordpress.android.ui.WPLaunchActivity”);

```
        final String URL_STRING = "http://127.0.0.1:4723/";
        URL url = new URL(URL_STRING);

        AndroidDriver driver = new AndroidDriver(url, capabilities);
        driver.findElement(By.id("org.wordpress.android:id/nux_username")).sendKeys("test@gmail.com");

```

The error return as:

> java.lang.ClassCastException: class org.openqa.selenium.Platform$22 cannot be cast to class java.lang.String (org.openqa.selenium.Platform$22 is in unnamed module of loader ‘app’; java.lang.String is in module java.base of loader ‘bootstrap’)

I tried both AppiumDriver and AndroidDriver type but neither worked to me.

---

<div class="post-metadata">

**Author:** ![Aleksei](https://discuss.appium.io/user_avatar/discuss.appium.io/aleksei/32/6267_2.png) [@Aleksei](https://discuss.appium.io/u/Aleksei)\
**Post date:** [March 31, 2022, 7:25am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/2 "2022-03-31T07:25:48Z")

</div>

try add

```auto
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.1.1</version>
        </dependency>

```

---

<div class="post-metadata">

**Author:** ![mykola-mokhnach](https://discuss.appium.io/user_avatar/discuss.appium.io/mykola-mokhnach/32/4578_2.png) [@mykola-mokhnach](https://discuss.appium.io/u/mykola-mokhnach)\
**Post date:** [March 31, 2022, 9:05am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/3 "2022-03-31T09:05:48Z")

</div>

> [@hn911](#):
>
> Platform.ANDROID

change it to Platform.ANDROID.name().

In general, don’t use the Capabilities class at all, but the …Options one instead: [java-client/docs/v7-to-v8-migration-guide.md at master · appium/java-client · GitHub](https://github.com/appium/java-client/blob/master/docs/v7-to-v8-migration-guide.md#strict-w3c-specification-compatibility)

---

<div class="post-metadata">

**Author:** ![Aleksei](https://discuss.appium.io/user_avatar/discuss.appium.io/aleksei/32/6267_2.png) [@Aleksei](https://discuss.appium.io/u/Aleksei)\
**Post date:** [March 31, 2022, 10:52am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/4 "2022-03-31T10:52:06Z")

</div>

aaa. other solution move to:

```auto
MobilePlatform.ANDROID // this is Appium thing from 'package io.appium.java_client.remote;'

```

---

<div class="post-metadata">

**Author:** ![hn911](https://discuss.appium.io/user_avatar/discuss.appium.io/hn911/32/8908_2.png) [@hn911](https://discuss.appium.io/u/hn911)\
**Post date:** [March 31, 2022, 2:55pm UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/5 "2022-03-31T14:55:04Z")

</div>

Thanks, got it works now.

---

<div class="post-metadata">

**Author:** ![Shehreen\_Mushtaq](https://discuss.appium.io/user_avatar/discuss.appium.io/shehreen_mushtaq/32/9979_2.png) [@Shehreen\_Mushtaq](https://discuss.appium.io/u/Shehreen_Mushtaq)\
**Post date:** [April 21, 2022, 6:03am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/6 "2022-04-21T06:03:02Z")

</div>

Can anyone guide me how did it work? I am facing the same issue and at the same point. I am confuse how to migrate my code to javaclient8 because I am at very beginning of the automation. Anyone can help? Thanks in advance

import java.io.File;  
import java.net.MalformedURLException;  
import java.net.URL;  
import io.appium.java\_client.android.AndroidDriver;

import org.openqa.selenium.MutableCapabilities;  
import org.openqa.selenium.remote.DesiredCapabilities;  
import org.testng.annotations.Test;

public class AppiumCapabilities {  
@Test  
public void testAppium() throws MalformedURLException{

```
AndroidDriver driver;
DesiredCapabilities capability = new DesiredCapabilities();
capability.setCapability("platformName", "Android");
capability.setCapability("deviceName", "Nexus 5");
capability.setCapability("platformVersion", "6.0.1");
capability.setCapability("udid","039e8ae813aa787d");

File file = new File("C:\\Users\\ShahreenMushtaq\\workspace1\\Appium\\zameenapk\\app-zameen-live-release.apk");
capability.setCapability("app", file.getAbsolutePath());

driver = new AndroidDriver(new URL("http://192.168.100.7:4723/wd/hub"),capability);

```

}  
}

---

<div class="post-metadata">

**Author:** ![Aleksei\_Gerasimov](https://discuss.appium.io/user_avatar/discuss.appium.io/aleksei_gerasimov/32/8234_2.png) [@Aleksei\_Gerasimov](https://discuss.appium.io/u/Aleksei_Gerasimov)\
**Post date:** [June 22, 2022, 6:52pm UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/7 "2022-06-22T18:52:41Z")

</div>

```
I have same problem with Initialize IOS driver in Appium 1.22.3

```

import com.codeborne.selenide.WebDriverProvider;  
import io.appium.java\_client.ios.IOSDriver;  
import io.appium.java\_client.ios.options.XCUITestOptions;  
import org.openqa.selenium.Capabilities;  
import org.openqa.selenium.WebDriver;

```
import javax.annotation.CheckReturnValue;
import javax.annotation.Nonnull;
import javax.annotation.ParametersAreNonnullByDefault;
import java.net.MalformedURLException;
import java.net.URL;

@ParametersAreNonnullByDefault
public class iOSDriverProvider implements WebDriverProvider {
    @Override
    @CheckReturnValue
    @Nonnull
    public WebDriver createDriver(Capabilities capabilities) {

        XCUITestOptions options = new XCUITestOptions();
        options.merge(capabilities);
        options.setAutomationName("XCUITest");
        options.setPlatformName("iOS");
        options.setDeviceName("iPhone 11");
        options.setPlatformVersion("14.1");
        options.setApp("/Users/alekseigerasimov/1/UIKitCatalog.app");

        System.out.println(options);
        try {
            return new IOSDriver(new URL("http://127.0.0.1:4723/wd/hub"), options);
        } catch (MalformedURLException e) {
            throw new RuntimeException(e);
        }
    }
}

```

Error: java.lang.ClassCastException: class org.openqa.selenium.Platform$23 cannot be cast to class java.lang.String (org.openqa.selenium.Platform$23 is in unnamed module of loader ‘app’; java.lang.String is in module java.base of loader ‘bootstrap’)

Capability are:  
Capabilities {appium:app: /Users/alekseigerasimov/1/U…, appium:automationName: XCUITest, appium:deviceName: iPhone 11, appium:platformVersion: 14.1, platformName: IOS}

---

<div class="post-metadata">

**Author:** ![Abhay\_Bharti](https://discuss.appium.io/user_avatar/discuss.appium.io/abhay_bharti/32/9433_2.png) [@Abhay\_Bharti](https://discuss.appium.io/u/Abhay_Bharti)\
**Post date:** [June 25, 2022, 6:13am UTC](https://discuss.appium.io/t/unable-to-initialize-driver-using-appium-java-8/36038/8 "2022-06-25T06:13:59Z")

</div>

Upgraded selenium-java version to 4.2.2 and Appium java client to 8.1.1. Build your project, run your script. This issue will no more come.
