我正在尝试一个简单的java类来测试jGit的功能(见下文)。
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.storage.file.FileRepositoryBuilder;
import java.io.File;
import java.io.IOException;
public class CreateRepository {
public static void main( String[] args ){
Repository myrepo = createRepository("/mypath");
}
public static Repository createRepository(String repoPath) {
FileRepositoryBuilder builder = new FileRepositoryBuilder();
Repository repo = null;
try {
repo = builder.setGitDir(new File(repoPath))
.readEnvironment() // scan environment GIT_* variables
.findGitDir() // scan up the file system tree
.build();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return repo;
}
}
当我在我的构建路径中使用最新的jgit jar在Eclipse Indigo上运行时,我收到错误消息“需要2个参数” - 没有别的,没有例外! :S
感谢您提前提供任何帮助。
答案 0 :(得分:1)
JGit中唯一显示该错误消息的部分位于main() function of MyersDiff
。
/**
* @param args two filenames specifying the contents to be diffed
*/
public static void main(String[] args) {
if (args.length != 2) {
System.err.println(JGitText.get().need2Arguments);
System.exit(1);
}
// ...
}
请检查您的类路径并确保您的项目(以及您的main()
)在 jgit.jar之前是,并且您不会以某种方式调用错误的main()
答案 1 :(得分:1)
首先查看包org.eclipse.jgit.api。 最简单的开始是Git课程:
// clone a repository
Git git = Git.cloneRepository().setURI("git://yourserver/repo.git").call();
// init a fresh new repository in the current directory
Git git = Git.init().call();
// open a repository on your disk
Git git = Git.open(new File("/path/of/repo");
然后探索你得到的git对象上可用的命令 从这些出发点开始。