Desired capabilities are sent by the client to the server via JSON objects by requesting the automation session we intend to have. Now, with the preceding code refactor, we can start the Appium server by calling the start() method. This method starts the Appium server assuming the node and appium.js files to be in certain locations and using port 4723. If you have tweaked node.js installation, your Appium install path is not the same, or if you want to start Appium server on different ports, we can use AppiumServiceBuilder to override these inputs:
appiumService = AppiumDriverLocalService.buildService(new AppiumServiceBuilder()
.usingDriverExecutable(new File(("/path/to/node")))
.withAppiumJS(new File(("/path/to/appium")))
.withIPAddress("127.0.0.1")
.usingPort(port)
.withArgument(argument)
...