我试图使用Java执行SVN复制操作(从分支创建标记)。
我得到了以下例外。
“线程中的异常”主java.lang.NullPointerException 在org.tigris.subversion.svnant.SvnFacade.getFacade(Unknown源代码中) 在org.tigris.subversion.svnant.SvnFacade.getSetting(Unknown源代码中) 在org.tigris.subversion.svnant.SvnFacade.getDateFormatter(Unknown源代码中) 在org.tigris.subversion.svnant.commands.SvnCommand.getDateFormatter(Unknown源代码中) 在org.tigris.subversion.svnant.commands.SvnCommand.getRevisionFrom(Unknown源代码中) 在org.tigris.subversion.svnant.commands.Copy.setRevision(Unknown源代码中) 在svnOperation.createTags.commitTags(createTags.java:55) 在svnOperation.createTags.main(createTags.java:23)“
我正在使用最新的SVN JAR文件。
有人能建议怎么纠正这个问题吗?或者我在这里犯了什么错误。
这是我的代码:
Project p = new Project();
p.setProperty("username", "automation");
p.setProperty("password", "automation");
p.setProperty("javahl", "true");
p.setProperty("javahl", "true");
SvnTask svn = new SvnTask();
Copy C1 = new Copy();
C1.setDescription("Creating tags");
C1.setSrcUrl(new SVNUrl("SrcUrl"));
C1.setDestUrl(new SVNUrl("DestUrl"));
C1.setMessage("message");
C1.setRevision("1234");
C1.setProject(p);
svn.addCopy(C1);
svn.setProject(p);
svn.execute();发布于 2017-05-02 14:08:08
SvnAnt被设计为从Ant脚本中使用。但是,您似乎正在尝试使用Java代码与Subversion交互。
SVNKit是从Java应用程序中访问Subversion特性的更好方法。
下面是创建Subversion标记的示例:
SVNCopyClient copyClient =
SVNClientManager.newInstance().getCopyClient();
SVNURL srcURL = SVNURL.parseURIEncoded("http://example.com/repos/trunk");
SVNURL dstURL = SVNURL.parseURIEncoded("http://example.com/repos/tags/tag");
SVNCopySource copySource =
new SVNCopySource(SVNRevision.HEAD, SVNRevision.HEAD, srcURL);
copyClient.doCopy(new SVNCopySource[] {copySource}, dstURL,
false, false, true, "message", null); 有关更多信息,请参见开始使用SVNKit。
https://stackoverflow.com/questions/43739031
复制相似问题