使用Java删除JIRA中的问题 1 月,3 周 Questions & Answers 1572 我正在尝试编写一个方法来删除JIRA中的一个问题 我已经有了创建和更新问题的方法,但是我找不到任何关于如何使用Java删除问题的文档 如何从Java应用程序中删除JIRA问题
# 1 楼答案 您可以尝试从IssueService:https://docs.atlassian.com/jira/latest/com/atlassian/jira/bc/issue/DefaultIssueService.html#delete(com.atlassian.crowd.embedded.api.User, com.atlassian.jira.bc.issue.IssueService.DeleteValidationResult)删除
# 2 楼答案 您可以尝试这样做:(在这个类中,我使用JQL获得特定的用户创建的问题,在得到响应后,我将逐个删除所有问题) public class DeleteJiraIssuesHelper { private InputStream inputStream; private JsonReader jsonReader; public void deleteJiraIssues() throws JiraDeleteIssueException, IOException { String JQL="your jql query"; try { URL url = new URL( "your jira url/rest/api/latest/search?jql="+JQL); String userpass = "UserName" + ":" + "Password"; String basicAuth = "Basic " + new String(new Base64().encode(userpass.getBytes())); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); conn.setRequestProperty("Authorization", basicAuth); conn.setRequestProperty("Content-Type", "application/json"); if (conn.getResponseCode() != 200) { throw new JiraConnectionException("Failed : HTTP error code : " + conn.getResponseCode()); } conn.getResponseMessage(); inputStream = conn.getInputStream(); jsonReader = Json.createReader(inputStream); JsonObject jsonObject = jsonReader.readObject(); int no = jsonObject.getInt("total"); JsonArray jsonArray = jsonObject.getJsonArray("issues"); List<String> issueList = new ArrayList<>(); for (int i = 0; i <= no - 1; i++) { JsonObject jsonObject2 = jsonArray.getJsonObject(i); String key = jsonObject2.getString("key"); issueList.add(key); } conn.disconnect(); HttpURLConnection httpCon = null; for (int i = 0; i < no; i++) { URL url2 = new URL( "Jira url/rest/api/latest/issue/" + issueList.get(i)); httpCon = (HttpURLConnection) url2.openConnection(); httpCon.setRequestProperty("Authorization", basicAuth); httpCon.setDoOutput(true); httpCon.setRequestProperty("Content-Type", "application/json"); httpCon.setRequestMethod("DELETE"); httpCon.connect(); httpCon.getResponseCode(); httpCon.disconnect(); } } catch (IOException ex) { throw new JiraDeleteIssueException("MalformedURLException: " + ex); } finally { inputStream.close(); jsonReader.close(); } } }
# 1 楼答案
您可以尝试从IssueService:https://docs.atlassian.com/jira/latest/com/atlassian/jira/bc/issue/DefaultIssueService.html#delete(com.atlassian.crowd.embedded.api.User, com.atlassian.jira.bc.issue.IssueService.DeleteValidationResult)删除
# 2 楼答案
您可以尝试这样做:(在这个类中,我使用JQL获得特定的用户创建的问题,在得到响应后,我将逐个删除所有问题)