Olá! Minha aplicação fica alocada no SystemTray. Quando eu uso o caminho absoluto da imagem no meu código (pegando desde a raiz e tal), a imagem é exibida. No caminho relativo, não. Porém a imagem está no meu projeto.
Por acaso a pasta imgs está no classpath de sua aplicação?
Se estiver, então o caminho relativo é somente "/imagem.jpg".
O getClass().getResourceAsStream não funciona com caminhos absolutos, só funciona com caminhos relativos.
Por isso o caminho tem que começar com "/", pra ele procurar a partir da raíz do classpath de sua aplicação.
Entendi, staroski. Eu não sei bem o que é esse classpath, seria tipo “a pasta do Projeto”? (Eu não lembro nunca de ter configurado isso, então acredito que esteja Default. Uso Linux, se muda algo).
Não, classpath é uma propriedade de sistema do Java, pode conter diretórios e/ou arquivos .jar e .zip.
São os caminhos onde a máquina virtual vai tentar localizar classes e recursos (imagens ou outros arquivos) de sua aplicação.
Você pode setar ele em linha de comando com a propriedade, exemplo: