Eu criei um my-app.desktop
arquivo para um programa que escrevi. Quando clico duas vezes, recebo a mensagem de erro " Ocorreu um erro ao iniciar o aplicativo ". Como posso obter informações mais detalhadas sobre qual é o problema?
Vi uma referência a uma seção "detalhes" da caixa de diálogo, mas não há nada parecido com o presente na que vejo. Se eu estivesse no meu Mac, abriria o aplicativo Console para ver se algum erro foi registrado, mas não aprendi nada parecido no Ubuntu.
(Observe que, diferentemente de outras perguntas com título semelhante, não estou perguntando o que há de errado com esse arquivo .desktop em particular; quero saber como descobrir em geral.)
PATH
). Quero saber como obter exatamente o mesmo ambiente que um lançamento normal, mas com mais informações de diagnóstico.Exec=
caminho. Lembre-se, você deve terExec=
entre aspas ePath=
sem aspas.Respostas:
Aqui está um truque que você pode usar. Crie um script de wrapper para seu aplicativo que o inicie e capture a saída de erro:
Salve isso
~/foo.sh
e torne-o executável comchmod +x ~/foo.sh
. Agora, aponte o iniciador da área de trabalho para ele. Algo como:Isso redirecionará todas as mensagens de erro
~/myapp.log
e você poderá examiná-las quando quiser. Você pode usar2>>~/myapp.log
se desejar que mensagens de erro sucessivas sejam anexadas ao arquivo em vez de substituí-lo.Como um aparte, a razão que o
$PATH
é diferente é porque provavelmente você está definindo o seu$PATH
em~/.bahsrc
que não é lido pelo ambiente gráfico. Também é uma péssima idéia, pois$PATH
ela será definida toda vez que você abrir um novo terminal, o que é desnecessário. Use~/.profile
para isso em seu lugar. Para mais detalhes sobre quais arquivos são lidos ao ver aqui e para mais sobre qual arquivo deve ser usado para quê, consulte aqui .fonte
Encontre uma resposta para esta pergunta aqui: /ubuntu//a/836842
Tente o seguinte:
Ele gera erros no seu
.desktop
arquivo. Por exemplo, o meu retornou:Então, quando corrigi o erro de digitação
Desktop Entry
, o script foi executado com êxito.fonte
Executando o seguinte comando no terminal:
Estou certo de que você descobrirá se há um erro ou não no seu comando atribuído ao
Exec
campo de dentro do seu arquivo .desktop.fonte
normalmente, o terminal (-putput) fornece muitas informações úteis, tanto sobre o aplicativo quanto sobre o arquivo da área de trabalho. Um exemplo: se eu executar meu aplicativo no terminal, digitando o comando no terminal, o aplicativo será iniciado.
No entanto, se houver algo errado, você pode esperar uma saída como:
que fornece muitas informações úteis, até a linha do aplicativo que causa o erro. (Eu errei de propósito)
O mesmo com o arquivo da área de trabalho, basta abrir um terminal no diretório do arquivo .desktop e arrastá-lo para o terminal. Se, por exemplo, você remover a
Exec=
linha de um arquivo .desktop, o terminal informará que não é possível encontrar o comando a ser executado.Para testar se o aplicativo apresenta um erro, basta executar o que você colocou após a
Exec=
sequência.A saída do terminal é geralmente muito específica e útil nos relatórios de erros, como aqui .
fonte
Isso pode ajudar outras pessoas - esta é a especificação oficial dos arquivos do iniciador de desktop
A seção importante é: Chaves de entrada da área de trabalho reconhecidas - que mostram quais valores você precisa.
fonte
Quando eu realmente não consigo entender, eu:
Em seguida, clique com o botão direito do mouse no ícone padrão criado e aponte para um gráfico melhor.
fonte
Para mim, o problema era uma
Icon=
linha que faltava (o que parece ser um requisito estúpido para um iniciador ativo). Meu arquivo .desktop completo agora se parece com:O que não é particularmente robusto às mudanças no usuário, mas tanto faz.
fonte