我正在尝试构建一个允许用户使用基于Git的存储库的Java应用程序.我可以使用以下命令从命令行执行此操作:
git init
<create some files>
git add .
git commit
git remote add <remote repository name> <remote repository URI>
git push -u <remote repository name> master
Run Code Online (Sandbox Code Playgroud)
这允许我创建,添加和提交内容到我的本地存储库并将内容推送到远程存储库.我现在正试图在我的Java代码中使用JGit做同样的事情.我能够轻松地使用JGit API执行git init,添加和提交.
Repository localRepo = new FileRepository(localPath);
this.git = new Git(localRepo);
localRepo.create();
git.add().addFilePattern(".").call();
git.commit().setMessage("test message").call();
Run Code Online (Sandbox Code Playgroud)
同样,所有这一切都很好.我找不到任何例子或者等效代码git remote add和git push.我确实看过这个问题.
testPush()失败并显示错误消息TransportException: origin not found.在其他例子我见过https://gist.github.com/2487157做git clone 之前 git push,我不明白为什么这是必要的.
任何有关如何做到这一点的指示将不胜感激.
我在我的 Maven 项目中使用 OpenSaml。当我尝试使用 DefaultBootstrap 类的变体初始化 OpenSaml 时,我得到以下堆栈跟踪:
java.lang.NoSuchMethodError: org.slf4j.helpers.Util.report(Ljava/lang/String;)V
org.apache.log4j.Log4jLoggerFactory.<clinit>(Log4jLoggerFactory.java:47)
org.apache.log4j.LogManager.getLogger(LogManager.java:42)
org.slf4j.impl.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:73)
org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:103)
org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:56)
org.opensaml.xml.XMLConfigurator.<init>(XMLConfigurator.java:73)
Run Code Online (Sandbox Code Playgroud)
我尝试执行 mvn dependency:tree 来找出从何处加载 SLF4J jar 的不匹配版本。我还尝试在 mvn.bat 中将 -verbose 选项传递给 Java。这些选择都没有帮助。我尝试一一删除 pom.xml 中的依赖项。再次,没有运气。如果有人可以阐明如何找到罪魁祸首罐子或如何解决此错误,我将不胜感激。