How to start appium with AppiumDriverLocalService without giving node path and appium js path into code?

I am trying with below code.

AppiumDriverLocalService service = AppiumDriverLocalService.buildDefaultService();

But it gives me “io.appium.java_client.service.local.InvalidNodeJSInstance: Node.js is not installed”

Is there any way I can fix this problem without passing the node path/appium js into program ?

Any help will be more Appreciated

You cannot, it is mandatory or u can say a precondition to pass node path / appium js path in this class

Thanks @amitjaincoer191 .
Is there any work around for cross platform like Windows , Mac where it can find path dynamically. I mean basically try to avoid to hardcode the path on any java or properties file.

you can handle programmatically, like check OS type and launch appium and node accordingly.
launch appium in windows
}else if(linux){
launch appium in linux
launch appium in MAC

You can add these path to environment variable and then read it using java code


public void getEnviormentVariables(){
System.out.println("ANDROID_HOME : "+System.getenv(“ANDROID_HOME”));
System.out.println("PATH : "+System.getenv(“PATH”));

for mac I am not sure you can search if same code work, but yes we do set path like windows in mac machine also.