Como alguém que lançou recentemente um jogo libGDX no Steam, diferentemente do .NET e DirectX, o Steam não fornece uma opção ao seu aplicativo para verificar e baixar automaticamente a versão necessária dessas bibliotecas.
É intrusivo para o usuário fazê-lo instalar o Java como uma biblioteca do sistema, pois a maioria ainda vê o JRE, especialmente o Oracle, como algum tipo de falha de adware / segurança e não deseja instalá-lo em sua máquina. Ainda existe um estigma em relação aos aplicativos Java na área de trabalho, por isso é preciso ter consideração com o usuário.
O que eu recomendo é usar o aplicativo packr do libgdx , que empacota automaticamente seu jar e recursos com um OpenJDK privado apropriado, aberto para uso e distribuição com seu software. Como alternativa, você pode fazer isso manualmente, pegando a compilação não oficial do OpenJDK que eles estão usando no packr e incluindo-a em seu projeto.
Pessoalmente, faço essa última opção, pois tenho o download da versão mais recente e empacotado tudo, incluindo a distribuição no steam, tudo incluído no script de construção de notas do meu projeto.
A inclusão de seu próprio JRE / JDK é leve, adicionando apenas 80 mb ao seu jogo e não é invasiva. Isso também garante que a versão do Java com a qual você está executando seu aplicativo seja sempre a versão que você precisa, em vez de entrar em conflito com o que o sistema possui.
Edit: 13 de março de 2017
Há pouco mais de um ano, uso o OpenJRE da Azul, em vez das versões não oficiais da alexkasko. Eles são amplamente utilizados e suportados, mesmo em ambientes empresariais. Além disso, eles suportam o Java 8 e superior, onde, no momento da minha troca, as versões não oficiais do repositório de compilação estavam bloqueadas no Java 7.
Desde que mudei, agora também existe um repositório de código-fonte aberto , que continua a fornecer versões criadas pela comunidade do openjdk / jre, se você desejar usá-lo. Ambos são bons.
Alguns usuários podem não ter o Java instalado e eu não acredito que o Steam tenha uma maneira nativa de verificar / instalar o Java, pois isso seria irritante para o usuário e apenas uma pequena minoria de jogos no Steam exige o Java.
Tente incluir um Java Runtime Environment portátil para que você sempre tenha uma compilação consistente do Java para executar o jogo, tenho certeza de que existem alguns que atendem às suas necessidades.
fonte
O desenvolvimento Java pode ser um pesadelo na implantação; mas existem ferramentas para facilitar isso.
Por exemplo, você pode usar uma ferramenta como
Launch4j
empacotar seu jogo final; opcionalmente, você pode dizer para incluir o JRE (ou não) para criar um binário totalmente independente.Dessa forma, você não se importa se ou o que JREs o cliente instalou; basta empacotar seu aplicativo e enviá-lo. A desvantagem é que seu binário final será significativamente maior.
fonte