栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

通过JGit克隆存储库后如何释放文件系统锁

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

通过JGit克隆存储库后如何释放文件系统锁

因此,从字面上看,经过几天的戳后,我点击了“提交”,我偶然发现了我认为的答案。

食谱示例仅调用

.close()
上的结果的方法
cloneRepository()
call()
方法(A
Git
实例)。API文档指出该方法还应该调用
.close
基础
Repository
实例的方法:

http://download.eclipse.org/jgit/site/4.0.1.201506240215-r/apidocs/org/eclipse/jgit/api/Git.html#close()

如果存储库是由此类中的静态工厂方法打开的,则此方法将在基础存储库实例上调用Repository.close()。

但是,我发现如果自己获取

Repository
实例并调用其
.close()
方法,则会释放所有文件系统锁。我认为这是我遵循的JGit菜谱参考中的遗漏,并将提交问题/建议。

这是有效的CFML代码。请注意

.close()
底部的两个呼叫。

Git = createObject( 'java', 'org.eclipse.jgit.api.Git' );localPath = createObject( 'java', 'java.io.File' ).init( expandPath( 'temp' ) );result = Git.cloneRepository()        .setURI( 'https://github.com/github/testrepo.git' )        .setDirectory( localPath )        .call();result.getRepository().close();result.close();


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/431194.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号