Windows ou linux ?!!

Bonjour,

Ma question est bête mais j'aimerai bien avoir une réponse quand même.
Est ce que c'est normal que ce code ne marche pas sous Windows, mais que sous Linux ?
Si oui, pourquoi §?

try
        {
          String[] cmd = {....}; 
         Logger logger = LoggerFactory.getLogger(ma_classe.class);
         Runtime runtime = Runtime.getRuntime();
         Process process = runtime.exec(cmd);
          try
              {
                process.waitFor();
               }
               catch (InterruptedException e)
              {
                logger.error("failed to deliver an email: {}", new Object[] { e.getMessage() });
              }
 catch (IOException e)
        {
            logger.error("failed to deliver an email: {}", new Object[] { e.getMessage() });
        }
    }


Merci d'avance.

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    Pareil que edkm, mais j'irais même jusqu'à dire que si la ligne de commande se trouve être "mailx ............", forcément elle ne vas pas fonctionner sur Windows.

    Si vous souhaitez utiliser l'envoi de mail, je conseille la lib apache pour ça :

    http://commons.apache.org/proper/commons-email/

    Fonctionne sur Windows ou Linux ou autre.
    1. Contributeur
      Salut, je n'y connais rien en JAVA mais peut-être qu'il y a une manière différente de définir les process (en JAVA) sous windows et sous GNU/Linux (c'est juste une supposition).

      a+
      1. Contributeur
        La partie:

        Dans le bout de code: cmd = {....} les quatre points c'est normal ou c'est un bout de commande (cmd pour commande) que tu as volontairement enlevé pour poster ton code ?, si c'est la cas, il se peut que les séparateurs (et le code qui y correspond) ne soient pas le mêmes sous w$ et sous GNU/Linux (et il y peut-être une procédure générique en JAVA, par exemple sous Python c'est os.sep).

        a+
      2. cmd = {...} ->
        String[] cmd = {"python", Parameters.UTIL_DIRECTORY + "mail.py",
        "login", "mon_login",
        "--password", "password",
        "--sender", <noreply@mon_projet.com>",
        "--receiver", name + "\" <" + address + ">",
        "--subject", subject,
        "--body", content };
      3. oui mais attention JAVA et cmd pas les meme code si tu veut savoir comment ecrir en java ou cmd je suis la . déjat deux ex:

        cd : cd Desktop ca veut dire dans desktop (buraut) cd..contraire ex
        C://Users/Ethan/Desktop cd..= C://Users/Ethan
        tree: vous montre les pilote (driver) et plein d'autre codes
      4. Oui je veux bien savoir comment écrire en java s'il te plait.
        Merci beaucoup.