Java 类型不匹配:无法从org.json.JSONObject转换为org.json.simple.JSONObject
当执行以下代码时,我得到一个类型不匹配错误。请帮我整理一下Java 类型不匹配:无法从org.json.JSONObject转换为org.json.simple.JSONObject,java,jira-zephyr,Java,Jira Zephyr,当执行以下代码时,我得到一个类型不匹配错误。请帮我整理一下 /** * Gets the versionID for the project. * * @param versionName * @param projectId * @throws IOException * @return the ID for the specified Version in the specified Project */ public static String getVersionID(
/**
* Gets the versionID for the project.
*
* @param versionName
* @param projectId
* @throws IOException
* @return the ID for the specified Version in the specified Project
*/
public static String getVersionID(final String versionName, final String projectId)
throws IOException {
// Get list of versions on the specified project
final JSONObject projectJsonObj =
httpGetJSONObject(ZAPI_URL + "util/versionBoard-list?projectId=" + projectId);
if (null == projectJsonObj) {
throw new IllegalStateException("JSONObject is null for projectId=" + projectId);
}
final JSONArray versionOptions = (JSONArray) projectJsonObj.get("versionOptions");
// Iterate over versions
for (int i = 0; i < versionOptions.length(); i++) {
final JSONObject obj2 = versionOptions.getJSONObject(i);
// If label matches specified version name
if (obj2.getString("label").equals(versionName)) {
// Return the ID for this version
return obj2.get("value");
// return obj2.getString("value");
}
}
throw new IllegalStateException("Version ID not found for versionName=" + versionName);
}
然后,
if
部分和返回
部分。确保导入的是org.json.JSONObject
,而不是org.json.simple.JSONObject
。该错误表示您的代码正试图转换为后者,但收到了前者。由于这两个类具有相同的本地名称,因此很容易意外导入错误的类。您是否导入了正确的JSONObject
类?听起来您应该导入org.json.JSONObject
,而不是org.json.simple.JSONObject
。非常感谢。这就是问题所在。我已经使用了“org.json.simple.JSONObject”,现在它已经被排序了。非常感谢!我已经将我的评论转换成了一个答案,这样你就可以接受了。
final JSONObject obj2 = versionOptions.getJSONObject(i);