Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
读取属性文件时发生Java空指针异常_Java_Nullpointerexception - Fatal编程技术网

读取属性文件时发生Java空指针异常

读取属性文件时发生Java空指针异常,java,nullpointerexception,Java,Nullpointerexception,读取Config.properties文件时出现java空指针以下异常。 java扩展了TestBase.java,调用TestBase构造函数来加载配置属性,并调用initializeTestBase方法来从配置文件获取属性。 java.lang.NullPointerException 位于com.crm.testbase.testbase.initializeTestBase(testbase.java:35) 在TestBase.java中,有一个名为prop的静态变量未初始化

读取Config.properties文件时出现java空指针以下异常。 java扩展了TestBase.java,调用TestBase构造函数来加载配置属性,并调用initializeTestBase方法来从配置文件获取属性。 java.lang.NullPointerException 位于com.crm.testbase.testbase.initializeTestBase(testbase.java:35)


在TestBase.java中,有一个名为
prop
的静态变量未初始化

然后,在构造函数的try块中,执行以下操作:

Properties prop = new Properties();
这将创建一个名为
prop
的新局部变量,该变量将隐藏静态变量,并且根本不修改静态
prop
变量,因此它将保持为空。该try块中引用
prop
的所有操作都使用该局部变量,而不是静态变量

然后,当你到达

String browser=prop.getProperty("browser");
您试图从该空变量中调用一个方法,这将导致您看到的异常

解决方案是将构造函数更改为具有:

prop = new Properties()

添加了Java代码段如果运行代码,则没有src/main/Java文件夹。请尝试class.getResources()。顺便说一句,属性文件应该在src/main/resources中。
RemoteTestNG] detected TestNG version 6.11.0
printing config=chrome
calling initalize base
FAILED CONFIGURATION: @BeforeMethod setup
java.lang.NullPointerException
at com.crm.testbase.TestBase.initializeTestBase(TestBase.java:30)
at com.crm.testcases.LoginTest.setup(LoginTest.java:24)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
Properties prop = new Properties();
String browser=prop.getProperty("browser");
prop = new Properties()