En tant que quelqu'un qui a récemment publié un jeu libGDX sur Steam, contrairement à .NET et DirectX, Steam ne fournit pas d'option avec votre application pour vérifier et télécharger automatiquement la version dont vous avez besoin de ces bibliothèques.
Il est gênant pour l'utilisateur de leur faire installer Java en tant que bibliothèque système, car la plupart considèrent encore le JRE, en particulier Oracle, comme une sorte de trou de publicité / sécurité et ne veulent pas l'installer sur leur machine. Il y a toujours une stigmatisation envers les applications Java sur le bureau, vous devez donc être attentif à l'utilisateur.
Ce que je recommande est d'utiliser l'application packr de libgdx , qui emballera automatiquement votre pot et vos ressources avec un OpenJDK privé approprié, ouvert à l'utilisation et à la distribution avec votre logiciel. Alternativement, vous pouvez le faire manuellement en saisissant la version non officielle d'OpenJDK qu'ils utilisent dans packr et en l'incluant avec votre projet.
Personnellement, je fais cette dernière option car j'ai téléchargé la dernière version et tout emballé, y compris la distribution sur Steam, le tout inclus dans le script de construction gradle de mon projet.
Inclure votre propre JRE / JDK est léger, ajoutant seulement environ 80 Mo à votre jeu et non invasif. Cela garantit également que la version de Java avec laquelle vous exécutez votre application est toujours la version dont vous avez besoin, au lieu d'entrer en conflit avec celle du système.
Edit: 13 mars 2017
Depuis un peu plus d'un an , j'utilise OpenJRE d'Azul au lieu des versions non officielles d'Alexkasko. Ils sont largement utilisés et pris en charge même dans les environnements d'entreprise. De plus, ils prennent en charge Java 8 et versions ultérieures, où, au moment de mon changement, les versions non officielles du référentiel de construction étaient bloquées sur Java 7.
Depuis que j'ai changé, il existe maintenant un référentiel open source , qui continue de fournir des versions construites par la communauté de openjdk / jre, si vous souhaitez l'utiliser à la place. Les deux sont bons.
Certains utilisateurs peuvent ne pas avoir Java installé et je ne pense pas que Steam ait une façon native de vérifier / installer Java car cela serait irritant pour l'utilisateur et seule une petite minorité de jeux sur Steam nécessite Java.
Essayez d'inclure un environnement d'exécution Java portable afin que vous ayez toujours une version cohérente de Java pour exécuter le jeu, je suis sûr qu'il y en a autour qui répondront à vos besoins.
la source
Le développement Java peut être un cauchemar en ce qui concerne le déploiement; mais, il existe des outils pour rendre cela plus facile.
Par exemple, vous pouvez utiliser un outil comme
Launch4j
pour emballer votre jeu final; facultativement, vous pouvez lui indiquer d'inclure le JRE (ou non) afin de créer un binaire entièrement autonome.De cette façon, vous ne vous souciez pas si ou quels JRE le client a installés; il vous suffit d'emballer votre application et de l'expédier. L'inconvénient est que votre binaire final sera considérablement plus grand.
la source