IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

Création d'applications sous Linux


Sujet :

Administration système

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut Création d'applications sous Linux
    Bonjour,

    Je développe en Java une application libre pour des collégiens en situation de handicap. Initialement l'application est développée sous Windows, mais j'aimerais proposer une version Linux.

    Problème : autant, sous windows, je sais créer un exécutable, lui attribuer une icone, créer un setup avec InnoSetup, associer une extension de fichiers avec mon programme, etc, autant sous Linux je ne sais absolument rien faire de tout ça ! Est-ce que vous pouvez m'aider, au moins à savoir ce que je dois chercher ? Je suis un peu perdu.

    Merci infiniment !

  2. #2
    Rédacteur/Modérateur
    Avatar de Winnt
    Homme Profil pro
    budget et contrôle de gestion
    Inscrit en
    Décembre 2006
    Messages
    1 978
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France

    Informations professionnelles :
    Activité : budget et contrôle de gestion
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 978
    Par défaut
    Bonsoir,

    L'environnement Linux est composé d'une multitude de distributions qui sont rassemblées en famille. Ces familles correspondent , en règle générale, au format de paquet (en gros un programme).
    Ainsi Debian utilise un format de paquet .deb, RedHat un format de paquet .rpm...

    Donc si vous cherchez à proposer l'installation directement dans la distribution, il vous faudra rechercher les informations concernant l'empaquetage pour Debian, RedHat ou autre.

    Vous avez encore la solution de simplement proposer un fichier tar.gz contenant les sources (fichier compressé). Charge à celui qui voudras utiliser votre programme de l'installer dans le répertoire adéquat.
    Winnt
    Merci de lire les règles du forum LaTeX et Qu'est ce qu'un ECM ?.
    N'hésitez pas à parcourir la FAQ la réponse y est peut-être déjà.
    Pensez au bouton si votre problème est résolu.


    C'est en Linuxant qu'on devient .... geek
    Et c'est en LateXant qu'on devient flemmard
    Mon blog tout neuf.
    Articles : présentation de la distribution Gentoo, Les index sous LaTeX et leur personnalisation.

  3. #3
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 841
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 841
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Sharcoux Voir le message
    Problème : autant, sous windows, je sais créer un exécutable, lui attribuer une icone, créer un setup avec InnoSetup, associer une extension de fichiers avec mon programme, etc, autant sous Linux je ne sais absolument rien faire de tout ça ! Est-ce que vous pouvez m'aider, au moins à savoir ce que je dois chercher ? Je suis un peu perdu.
    Bonjour

    A mon avis il faudrait déplacer ce topic dans la partie admin plutôt que shell.

    Vois-tu, Linux utilise une conception radicalement différente de Windows. Ainsi pas de base de registre. Toute la configuration se fait dans des fichiers textes. Tu as par exemple un fichier nommé "/etc/mime.types" qui permet de définir la liaison "extension <-> application" (par exemple xls <-> excel).

    Dans une première étape, je te conseillerais d'abord de t'assurer que ton programme java fonctionne sous Linux. Normalement ça devrait aller vite surtout que Linux possède un compilateur Java nommé "jar". Ensuite, pour les icones et le reste ça pourra se faire plus tard...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  4. #4
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 300
    Par défaut
    java -jar nom_du_jar en ligne de commandes pour tester.

    testes avec le java d'oracle et openJDK pour éviter les mauvaises surprises.

    Au niveau des icônes pour lancer une appli, sous Windows celui-ci est contenu dans le .exe, sous linux, cela dépend de l'interface utilisée (essentiellement Gnome ou KDE).

    Ensuite pour créer un paquet .deb (pour système à base de debian) ou .rpm (pour système à base de Fedora), le principe est similaire, il faut créer un fichier de description contentant les dépendances (pour toi se sera openJDK ou le Java d'oracle) . Il y aura ensuite un script effectuant les opérations d'install ( copie des fichiers dans les bons dossiers), un script pré-installation, post-installation, pré-suppression, post-suppression. Tu trouveras facilement la doc. Il y a probablement des outils en interface graphique.

    Si tu veux pas te prendre la tête, tu peux aussi faire un script du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #! /bin/sh
    java -jar nom_du_jar
    La première amélioration à faire :tester si java est présent.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  5. #5
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut
    Ok, je vois. Merci beaucoup.

    J'ai déjà testé, ça marche sous Linux.

    Bon, pour résumer, si je veux pas trop me prendre la tête, je peux juste compresser le dossier d'installation en fait, c'est ça ? Ensuite s'il y a vraiment des linuxiens intéressés, il est fort possible qu'ils fassent le travail... C'est ça ?

  6. #6
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    18 300
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 18 300
    Par défaut
    Soit tu pars sur un simple script lançant ton .jar, soit tu crée un package .deb ou .rpm comme le disait Winnt

    Dans ce package, pour faire un truc propre, il te faudra tester les dépendances Java, crée des entrées dans le menu pour Gnome, KDE, LXDE ... enfin tous les cas de figure que tu comptes traiter.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  7. #7
    Expert confirmé Avatar de Flodelarab
    Homme Profil pro
    Inscrit en
    Septembre 2005
    Messages
    5 293
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente (Poitou Charente)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 5 293
    Par défaut
    Citation Envoyé par Sharcoux Voir le message
    Ok, je vois. Merci beaucoup.

    J'ai déjà testé, ça marche sous Linux.

    Bon, pour résumer, si je veux pas trop me prendre la tête, je peux juste compresser le dossier d'installation en fait, c'est ça ? Ensuite s'il y a vraiment des linuxiens intéressés, il est fort possible qu'ils fassent le travail... C'est ça ?
    Bonjour :-)

    Tu dis vouloir installer. Mais qu'est ce que ça signifie? Veux-tu faire une simple copie de fichier dans n'importe quel dossier? Dans un dossier obligatoire (genre /home/marcel/.monapplipourhandi/) ? As-tu besoin d'un fichier de configuration?

    En tant que linuxien, j'aimerais un jar sans aucune obligation quand à l'exécution. Un jar qui n'écrive pas à la racine de /home/marcel/ . Un jar qui demande la permission de créer un dossier /home/marcel/.monapplipourhandi/ pour y mettre ses éventuels fichiers. De plus, j'aimerais un script qui ne ferait qu'exécuter java -jar appli.jar accompagné d'un raccourci qui se mettrait sur le bureau de la plupart des distributions (comme /home/marcel/Desktop).

    Reste à déterminer ton niveau d'exigence.

  8. #8
    Membre éclairé
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2011
    Messages
    442
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2011
    Messages : 442
    Par défaut
    Ben, en gros, pour fonctionner, l'appli a besoin : d'un dossier contenant le jar et les ressources et éventuellement un fichier de conf (la conf par défaut sera utilisée sinon). Ensuite, il serait pertinent que les fichiers *.monExtension soient associés à cette application. Enfin, c'est plus sympa d'avoir l'icone du logiciel sur un fichier à double-cliquer pour le lancer. Laisser la possibilité de créer des raccourcis serait top aussi.

    Le fichier de conf permet de préciser l'adresse du dossier où l'application peut créer ses fichiers temporaires et enregistrer les préférences utilisateur. Si l'utilisateur sous Linux peut créer ce fichier de config, il n'aura aucun risque que l'application écrive ailleurs qu'à l'endroit indiqué. Normalement ce fichier est créé à l'installation par InnoSetup, ou sinon une version par défaut est générée à la première utilisation du logiciel, mais dans ce cas, l'application va effectivement écrire à la racine du home. Il serait donc bien d'avoir un script qui aide l'utilisateur à écrire le fichier de conf.

Discussions similaires

  1. Apostrophes et application sous linux
    Par libuma dans le forum Langage
    Réponses: 6
    Dernier message: 12/03/2008, 13h20
  2. Exécution d'une application sous linux
    Par sissi25 dans le forum Administration système
    Réponses: 9
    Dernier message: 19/07/2007, 15h00
  3. Création d'installeur sous Linux et Windows
    Par knarf87 dans le forum Linux
    Réponses: 3
    Dernier message: 09/05/2007, 11h05
  4. Application sous linux
    Par spikto dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 27/06/2006, 09h01
  5. [Système] lancer / kill une application sous linux
    Par Antoine NSG dans le forum Langage
    Réponses: 1
    Dernier message: 31/10/2005, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo