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

Java Discussion :

connaitre le nom du bash qui appel une class Java


Sujet :

Java

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut connaitre le nom du bash qui appel une class Java
    Bonjour

    J'ai un ensemble de programme Java appelé depuis des bash avec des classes abstraite et je cherche comment connaitre le nom du bash qui appel la classe Java ?

    Merci

  2. #2
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Tu passes le pid en args de ton application
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut
    je voulais eviter de passer des arguments en plus

  4. #4
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Si ton application A appelle ton application B sans lui dire qu'elle est application A, comment veux tu que B le sache?
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 705
    Détails du profil
    Informations personnelles :
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 705
    Points : 934
    Points
    934
    Par défaut
    bonjour

    Je pensais à la pile d'appel ou à un argument par defaut ou recuperer une variable systeme d'environment

  6. #6
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Ce sont 2 processus différents, ils ne partagent pas la même pile d'appel.

    Tu peux remplir une variable d'environnement, mais ça revient au même qu'un argument, avec en prime que d'autres applis peuvent en modifier la valeur, pas très sûr.
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  7. #7
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    en java >=9
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ProcessHandle.Info parentInfo = ProcessHandle.current().parent().get().info();
    Avant java 9, tu peux essayer de récupérer ton PID courant avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ManagementFactory.getRuntimeMXBean().getName()
    et à partir de là lancer des commandes linux pour déterminer le PID et les infos du parent, c'est un poil plus complexe, mais à partir du moment où tu connais ton propre PID, tu peux faire comme tu ferais en ligne de commande pour connaitre les infos du parent.

  8. #8
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par yildiz-online Voir le message
    Ce sont 2 processus différents, ils ne partagent pas la même pile d'appel.
    Les process (java ou autre) sont toujours relié dans un OS par une relation parent enfant sous linux, et je pense que c'est le cas aussi sous windows, donc cette info existe.

    Citation Envoyé par yildiz-online Voir le message
    Tu peux remplir une variable d'environnement, mais ça revient au même qu'un argument, avec en prime que d'autres applis peuvent en modifier la valeur, pas très sûr.
    Sous java les variables d'environnement sont figées au démarrage, elles sont transférée de la zone spécifique à l'OS vers la classe System. De toutes façons normalement un processus ne peut pas modifier les variables d'environnement d'un autre processus. Sinon on aurait de vaches de problèmes de sécurité avec les process qui jouent à faire du fork

Discussions similaires

  1. comment appeler une classe java dans une page jsp?
    Par limalima dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 21/11/2008, 22h59
  2. Appeler une classe java en perl
    Par missllyss dans le forum Langage
    Réponses: 1
    Dernier message: 04/06/2008, 15h35
  3. [2.2.1.1][JavaScript] Appel à une classe java
    Par bert1525 dans le forum BIRT
    Réponses: 2
    Dernier message: 17/12/2007, 09h18
  4. Réponses: 11
    Dernier message: 30/08/2007, 17h20
  5. Récupérer le nom du fichier qui appelle une fonction
    Par DeezerD dans le forum Langage
    Réponses: 2
    Dernier message: 24/03/2007, 14h37

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