API - GitHub JAVA

API - GitHub JAVA
TO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
0

Cześć,

mam problem z wyświetleniem branchy z github'a - stworzyłem button który ma służyć do pobrania branchy z repo na githubie i wyświetlić je na textArea w aplikacji.

pobrałem biblioteki eclipsa dotyczące Gita, ale ciągle gdy klikam button mam błędy. Aplikacje piszę w netbeans. Załączam jeszcze kod, który aktualnie jest na buttonie.

Macie jakiś pomysł jak to obejść i uzyskać tą listę branchy ? Będę meega wdzięczny.

Kopiuj
private static final String REMOTE_URL = "ADRES_URL_REPO";
    private void getGitActionPerformed(java.awt.event.ActionEvent evt) {                                       
       System.out.println("Listing remote repository " + REMOTE_URL);
        Collection<Ref> refs = null;
        try {
            refs = Git.lsRemoteRepository()
                    .setHeads(true)
                    .setTags(true)
                    .setRemote(REMOTE_URL)
                    .call();
        } catch (GitAPIException ex) {
            Logger.getLogger(DeploymentToolMockup.class.getName()).log(Level.SEVERE, null, ex);
        }

        refs.forEach((ref) -> {
            System.out.println("Ref: " + ref);
        });
    }   

import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.lib.Ref;

Błędy:
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at org.eclipse.jgit.transport.TransportHttp.<clinit>(TransportHttp.java:156)
at org.eclipse.jgit.transport.Transport.<clinit>(Transport.java:121)
at org.eclipse.jgit.api.LsRemoteCommand.execute(LsRemoteCommand.java:189)
at org.eclipse.jgit.api.LsRemoteCommand.call(LsRemoteCommand.java:161)
at deploymenttool.DeploymentToolMockup.getGitActionPerformed(DeploymentToolMockup.java:244)
at deploymenttool.DeploymentToolMockup$1.actionPerformed(DeploymentToolMockup.java:65)
at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
at java.desktop/javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:279)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6632)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3342)
at java.desktop/java.awt.Component.processEvent(Component.java:6397)
at java.desktop/java.awt.Container.processEvent(Container.java:2263)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5008)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2762)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4840)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:772)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:715)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:745)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:743)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:389)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:742)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
... 41 more

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory umiesz czytać? Masz gdzieś zależność która korzysta z api SLF4j ale nie masz dodanej biblioteki z faktyczną implementacją.

TO
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 24
0

Dzięki za podpowiedź a wiesz może jak przekazać tekst, który pokazuje się przy deploymencie do Scroll panelu? czyli to co się wykonuje po kliknięciu tego buttona do którego kod podałem ponizej było widoczne na tym panelu a nie w konsoli ?

bo utworzyłem

Kopiuj
     String selectedOrg = orgSelectName.getSelectedItem().toString();
       String pathDesktopBuildOrg = System.getProperty("user.home") + "/Desktop/Deployment/" + selectedOrg +"/build.xml";
       
       File buildFile = new File(pathDesktopBuildOrg);
       Project antProject = new Project();
       antProject.setUserProperty("ant.file", buildFile.getAbsolutePath());
       antProject.init();
       ProjectHelper helper = ProjectHelper.getProjectHelper();
       antProject.addReference("ant.ProjectHelper", helper);
       helper.parse(antProject, buildFile);
       String target = "deployCodeWithoutTests";
       antProject.executeTarget(target);
Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Musiałyś dodać nowy appender do loggera, tak żeby łykał te logi i puszczał do twojego panelu.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.