Exception jGit推送产生异常

Exception jGit推送产生异常,exception,push,jgit,Exception,Push,Jgit,我正试图在我的java项目中使用jGit。我使用的版本是“2.0.0.201206130900-r”,我的操作系统是Windows。在我尝试推之前,一切都很顺利: public static void main(String[] args) { File gitDir = new File("c:\\new-repo\\"); try { String localPath = "c:\\new-repo\\"; Repository localRepo =

我正试图在我的java项目中使用jGit。我使用的版本是“2.0.0.201206130900-r”,我的操作系统是Windows。在我尝试推之前,一切都很顺利:

public static void main(String[] args) {

    File gitDir = new File("c:\\new-repo\\");

try {

      String localPath = "c:\\new-repo\\";
      Repository localRepo = new FileRepository(localPath + ".git");
      localRepo.create();
      Git git = new Git(localRepo);

      git.add().addFilepattern("c:\\test.txt").call();

      git.commit().setMessage("testcommit").call();

      git.push().call();

  localRepo.close();
} catch (IllegalStateException ise) {
        System.out.println("The repository already exists!");
} catch (IOException ioe) {
        System.out.println("Failed to create the repository!");
} catch (NoFilepatternException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (GitAPIException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
  }
我得到的是:

Exception in thread "main" java.lang.NoClassDefFoundError: com/jcraft/jsch/JSchException
at org.eclipse.jgit.transport.Transport.<clinit>(Transport.java:111)
at org.eclipse.jgit.api.PushCommand.call(PushCommand.java:141)
at Application.main(Application.java:76)
Caused by: java.lang.ClassNotFoundException: com.jcraft.jsch.JSchException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 3 more
线程“main”java.lang.NoClassDefFoundError中的异常:com/jcraft/jsch/JSchException 在org.eclipse.jgit.transport.transport上(transport.java:111) 位于org.eclipse.jgit.api.PushCommand.call(PushCommand.java:141) 位于Application.main(Application.java:76) 原因:java.lang.ClassNotFoundException:com.jcraft.jsch.jscheException 位于java.net.URLClassLoader$1.run(URLClassLoader.java:202) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:190) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:307) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:248) ... 3个以上
有人能告诉我我的代码出了什么问题吗?

看来您缺少了推送SSH所需的库。将它添加到类路径中(如果使用Maven,则将其添加到pom中,或者将jar添加到类路径中)