I have a cucumber JVM + Selenium scripts. The main method is something like this,
public static void main (String args[]) {
    environment.environmentValue = args[0];
    path.pathValue = args[1];
    username.superUser = args[2];
        returnCode = Main.run(
            new String[] { "-g", "com.sanity.step.definition","-t", "@" +path ,
                        featureFile.replace("\\", "\\\\") },
                SeparateClassloaderTestRunner.class.getClassLoader());
}
I have a constructor class, i.e
public Class CucumberRunner;
private ClassUtility environment;
private Classutility pathVal;
private ClassUtility userName;
    public CucumberRunner(ClassUtility environment , ClassUtility pathVal, 
      ClassUtility userName) {
            this.environment = environment;
            this.pathVal=pathVal;
            this.userName= userName;
        }
This is my classutility Class,
public class ClassUtility {
    public String environmentValue;
    public String pathValue;
    public String superUser;
}
I am getting the compilation error as "Cannot make a static reference to the non-static field method in main method "enviornment.environmentValue = args[0]". So how do we do dependency injection for static variables? Can we do dependency injection for runtime arguments?