Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.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 Findbugs`NP\u NULL\u在某个路径上\u从\u返回\u值`_Java_Jenkins Plugins_Findbugs - Fatal编程技术网

Java Findbugs`NP\u NULL\u在某个路径上\u从\u返回\u值`

Java Findbugs`NP\u NULL\u在某个路径上\u从\u返回\u值`,java,jenkins-plugins,findbugs,Java,Jenkins Plugins,Findbugs,在尝试发布jenkins插件时,maven报告了一些findbugs错误,我不知道如何修复 [INFO] Possible null pointer dereference in com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl.doFillAuthTokenCredentialIdItems() due to return value of called method [com.datapipe.jenkins.vault.

在尝试发布jenkins插件时,maven报告了一些findbugs错误,我不知道如何修复

[INFO] Possible null pointer dereference in com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl.doFillAuthTokenCredentialIdItems() due to return value of called method [com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl, com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl] Dereferenced at VaultBuildWrapper.java:[line 326]Known null at VaultBuildWrapper.java:[line 326] NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE
[INFO] Possible null pointer dereference in com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl.doFillAuthTokenCredentialIdItems() due to return value of called method [com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl, com.datapipe.jenkins.vault.VaultBuildWrapper$DescriptorImpl] Method invoked at VaultBuildWrapper.java:[line 329]Known null at VaultBuildWrapper.java:[line 329] NP_NULL_ON_SOME_PATH_FROM_RETURN_VALUE
有问题的行属于以下函数:

public ListBoxModel doFillAuthTokenCredentialIdItems(){
  if (!Jenkins.getInstance().hasPermission(Jenkins.ADMINISTER)) {
    return new ListBoxModel();
  }
  AbstractIdCredentialsListBoxModel model = new StandardListBoxModel().includeEmptyValue().includeAs(ACL.SYSTEM, Jenkins.getInstance(), VaultTokenCredential.class);
  return model;
}
我已尝试添加以下空检查,但无效:

public ListBoxModel doFillAuthTokenCredentialIdItems(){
  Jenkins jenkins = Jenkins.getInstance();

  if (jenkins == null) {
    return new ListBoxModel();
  }

  if (!jenkins.hasPermission(Jenkins.ADMINISTER)) {
    return new ListBoxModel();
  }
  AbstractIdCredentialsListBoxModel model = new StandardListBoxModel().includeEmptyValue().includeAs(ACL.SYSTEM, jenkins, VaultTokenCredential.class);
  return model;
}

提前感谢

我不知道为什么,但在返回之前创建新的
ListBoxModel
成功了

public ListBoxModel doFillAuthTokenCredentialIdItems() {
  final ListBoxModel lbm = new ListBoxModel();
  final Jenkins jenkins = Jenkins.getInstance();

  if (jenkins == null) {
    return lbm;
  }

  if (!jenkins.hasPermission(Jenkins.ADMINISTER)) {
    return lbm;
  }
  AbstractIdCredentialsListBoxModel model = new StandardListBoxModel().includeEmptyValue().includeAs(ACL.SYSTEM, jenkins, VaultTokenCredential.class);
  return model;
}