Java JGit中DirCacheEditor的路径异常无效
我测试一段代码Java JGit中DirCacheEditor的路径异常无效,java,jgit,Java,Jgit,我测试一段代码 DirCache index = repository.lockDirCache(); DirCacheEditor editor = index.editor(); editor.add(new DirCacheEditor.PathEdit(path + File.separator + fileName) { @Override public void apply(DirCacheEntry entry) { entr
DirCache index = repository.lockDirCache();
DirCacheEditor editor = index.editor();
editor.add(new DirCacheEditor.PathEdit(path + File.separator + fileName) {
@Override
public void apply(DirCacheEntry entry) {
entry.setFileMode(FileMode.REGULAR_FILE);
}
});
editor.finish();
其中,path
是存储库所在目录的绝对路径,fileName
是我要添加的文件。但是,该代码抛出一个异常,消息为“invalidpath”
path
应该有什么值才能使此异常不再出现?JGit中的路径必须始终相对于存储库的根目录给定。此外,所有平台上的路径分隔符均为“/”
因此,您的代码应该如下所示
String path=“path/to”;
字符串fileName=“file.ext”;
...
新路径编辑(路径+“/”+文件名)
要生成如下路径:path/to/file.ext
还请注意,大多数JGit API需要相对路径,即不能有前导“/”。JGit中的路径必须始终相对于存储库的根目录。此外,所有平台上的路径分隔符均为“/” 因此,您的代码应该如下所示
String path=“path/to”;
字符串fileName=“file.ext”;
...
新路径编辑(路径+“/”+文件名)
要生成如下路径:path/to/file.ext
还要注意的是,大多数jgitapi需要相对路径,即不能有前导“/”