Eu executo o eclipse no linux mint. A instalação usa o flatpak como um envelope para execução. O comando exato é: /usr/bin/flatpak run --branch=stable --arch=x86_64 --command=eclipse --file-forwarding org.eclipse.Java
Eu quero passar o caminho do workspace para o eclipse e depois de pesquisar no Google, descobri que o eclipse pode receber um argumento especificando o workspace. Especificamente, é o argumento -data, que recebe um caminho para o workspace. Então, eu tentei: /usr/bin/flatpak run --branch=stable --arch=x86_64 --command="eclipse -data <absolute path to workspace>" --file-forwarding org.eclipse.Java
Eu citei o comando inteiro porque quando omiti as aspas, o flatpak reclamou que não reconheceu o sinalizador -data. No entanto, agora recebo o seguinte erro:
bwrap: execvp eclipse -data /home/dan/eclipse-workspace-minion: Nenhum arquivo ou diretório desse tipo
Imagino que citar o eclipse interfira na busca do executável do Eclipse pelo flatpak. (A propósito: verifiquei e o diretório /home/dan/eclipse-workspace-minion existe.) Alguém pode me aconselhar como passar o argumento -data para o Eclipse quando ele é executado pelo flatpak?
Antes de postar esta pergunta, pesquisei muito na internet por respostas. Depois de postar, continuei procurando por uma resposta e, na verdade, encontrei uma aqui:
https://www.reddit.com/r/flatpak/comments/lgfy5p/how_can_i_pass_arguments_to_a_flatpak_can_flatpak/
Nesta discussão há uma resposta de v_fv que afirma "... a maioria dos aplicativos Flatpak exporta um atalho para executá-los em /var/lib/flatpak/exports/bin/"
Acontece que a instalação do Eclipse faz isso, então você pode executar:
/var/lib/flatpak/exports/bin/org.eclipse.Java -data <absolute path to workspace>
Alternativamente, você pode adicionar
export PATH="/var/lib/flatpak/exports/bin:$PATH"
para .bashrc e então execute:
Acontece que executar o Eclipse dessa maneira produz um monte de conversa na sessão do terminal, mas isso não interfere na inicialização, que funciona perfeitamente.
Devo mencionar que isso está no Linux Mint 21.3 (Ubuntu 22.04). Isso não garante que funcionará em outras distribuições do Linux.