Erro de inicialização do SmartGit / Hg

0

Para um projeto pessoal, estou tentando fazer com que o SmartGit / Hg execute a partir de uma unidade portátil. Para fazer isso, estou usando a versão "genérica" ​​que roda apenas em Java. Infelizmente, sempre que tento iniciá-lo, os seguintes erros aparecem:

Erro ao invocar o SmartGit / Hg
java.lang.reflect.InvocationTargetException
    em sun.reflect.NativeMethodAccessorImpl.invoke0 (método nativo)
    at sun.reflect.NativeMethodAccessorImpl.invoke (fonte desconhecida)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke (fonte desconhecida)
    em java.lang.reflect.Method.invoke (fonte desconhecida)
    em QBootLoader.main (SourceFile: 112)
Causado por: java.lang.NoClassDefFoundError: org / eclipse / swt / widgets / Display
    em com.syntevo.q.gui.cl.a (SourceFile: 43)
    em smartgit.Xl.a (SourceFile: 320)
    em smartgit.anQ.a (SourceFile: 229)
    em smartgit.anQ.b (SourceFile: 185)
    em smartgit.anQ.a (SourceFile: 72)
    em smartgit.anR.a (SourceFile: 114)
    em smartgit.anR.call (SourceFile: 111)
    em com.syntevo.q.gui.cl.a (SourceFile: 84)
    em smartgit.anQ.a (SourceFile: 111)
    em smartgit.XA.b (SourceFile: 62)
    no SmartGit.main (SourceFile: 11)
    ... mais 5
Causado por: java.lang.ClassNotFoundException: org.eclipse.swt.widgets.Display
    em java.net.URLClassLoader $ 1.run (fonte desconhecida)
    em java.net.URLClassLoader $ 1.run (fonte desconhecida)
    em java.security.AccessController.doPrivileged (método nativo)
    em java.net.URLClassLoader.findClass (fonte desconhecida)
    at java.lang.ClassLoader.loadClass (fonte desconhecida)
    at sun.misc.Launcher $ AppClassLoader.loadClass (fonte desconhecida)
    at java.lang.ClassLoader.loadClass (fonte desconhecida)
    ... mais 16

Como este é um programa comercial, não posso verificar legalmente nenhum dos arquivos mencionados quanto a erros. Se alguém já trabalhou com o SmartGit / Hg e sabe como corrigir esse erro, agradeceria muito qualquer ajuda. Espero que não seja uma pergunta muito específica a ser removida da listagem, pois não encontrei outras informações sobre os erros.

Pequena adição às informações: o iniciador que está sendo usado é derivado do seguinte arquivo .sh fornecido:

#! / bin / bash
#
# Normalmente, a edição deste script não deve ser necessária.
#
# Para especificar um Java Runtime Environment alternativo, configure a variável de ambiente SMARTGITHG_JAVA_HOME

if ["$ SMARTGITHG_JAVA_HOME" = ""]; então
    SMARTGITHG_JAVA_HOME = $ SMARTGIT_JAVA_HOME
fi
if ["$ SMARTGITHG_JAVA_HOME" = ""] && [-f "/ usr / lib / jvm / java-7-openjdk-i386 / jre / bin / java"]; então
    SMARTGITHG_JAVA_HOME = "/ usr / lib / jvm / java-7-openjdk-i386 / jre / bin / java"
fi
if ["$ SMARTGITHG_JAVA_HOME" = ""]; então
    SMARTGITHG_JAVA_HOME = $ JAVA_HOME
fi

if ["$ SMARTGITHG_MAX_HEAP_SIZE" = ""]; então
    SMARTGITHG_MAX_HEAP_SIZE = $ SMARTGIT_MAX_HEAP_SIZE
fi
if ["$ SMARTGITHG_MAX_HEAP_SIZE" = ""]; então
    SMARTGITHG_MAX_HEAP_SIZE = 256m
fi

# isso parece necessário para o Solaris encontrar a biblioteca do Cairo
exportar LD_LIBRARY_PATH = $ {LD_LIBRARY_PATH}: / usr / lib / gnome-private / lib

_JAVA_EXEC = "java"
if ["$ SMARTGITHG_JAVA_HOME"! = ""]; então
    _TMP = "$ SMARTGITHG_JAVA_HOME / bin / java"
    if [-f "$ _TMP"]; então
        if [-x "$ _TMP"]; então
            _JAVA_EXEC = "$ _ TMP"
        outro
            eco "Aviso: $ _TMP não é executável"
        fi
    outro
        eco "Aviso: $ _TMP não existe"
    fi
fi

E se ! qual "$ _JAVA_EXEC"> / dev / null; então
    eco "Erro: nenhum ambiente java encontrado"
    saída 1
fi

#
# Resolva o local da instalação do SmartGit / Hg.
# Isso inclui resolver quaisquer links simbólicos.
PRG = $ 0
while [-h "$ PRG"]; Faz
    ls = `ls -ld" $ PRG "`
    link = `expr" $ ls ": '^. * -> \ (. * \) $' 2> / dev / null`
    se expr "$ link": '^ /' 2> / dev / null> / dev / null; então
        PRG = "$ link"
    outro
        PRG = "` dirname "$ PRG" `/ $ link"
    fi
feito

SMARTGIT_BIN = `dirname" $ ​​PRG "`

# absolutize dir
oldpwd = `pwd`
cd "$ {SMARTGIT_BIN}"; SMARTGIT_BIN = `pwd`
cd "$ {oldpwd}"; desabilitar oldpwd

SMARTGIT_HOME = `dirname" $ ​​SMARTGIT_BIN "`

# A próxima linha é solucionar o seguinte erro SWT:
# https://bugs.eclipse.org/bugs/show_bug.cgi?id=419729
UBUNTU_MENUPROXY = 0

_VM_PROPERTIES = "- Dsun.io.useCanonCaches = false"

# Remova o comentário da linha a seguir para alterar o local onde o SmartGit / Hg deve armazenar
# settings (o caminho de exemplo fornecido tornará o SmartGit / Hg portátil armazenando as configurações
# no diretório de instalação):
#_VM_PROPERTIES = "$ _ VM_PROPERTIES -Dsmartgit.settings = \ $ {smartgit.installation} /. Smartgit"

$ _JAVA_EXEC $ _VM_PROPERTIES -Xmx $ {SMARTGITHG_MAX_HEAP_SIZE} -Xverify: none -Dsmartgit.vm-xmx = $ {SMARTGITHG_MAX_HEAP_SIZE} -jar "$ SMARTGIT_HOME / lib / bootloader.jar" "
mnadareski
fonte

Respostas:

0

No meu caso, não estava usando o Windows X corretamente no meu ciXwin. Eu precisava lembrar de iniciar meu SSH com:

$ ssh -Y vagrant@localhost

Sei que você pode não estar usando o mesmo sistema que o meu, mas isso pode lhe dar algo para continuar!

Thomas Green
fonte