Avviare programma java

di il
4 risposte

Avviare programma java

Buonasera ! ho un problema con avviare un programma realizzato in java su windows.
Il codice scritto con lo scopo di avviare programma in java, ovvero di aprire un interfaccia scritta in fxml, è:

import java.io.*;

public class Avviatore_windows{
  public static void main(String[] args){
    Process cmd;
    String b ="cmd /c java -cp .;dependencies;dependencies"+File.separator+"poi"+File.separator+"*;dependencies"+File.separator+"poi"+File.separator+"ooxml-lib"+File.separator+"*;dependencies"+File.separator+"poi"+File.separator+"lib"+File.separator+"*;dependencies"+File.separator+"poi"+File.separator+"commons-compress"+File.separator+"* Avvio";
    try{
      cmd = Runtime.getRuntime().exec(b);

      BufferedReader stdInput = new BufferedReader(new InputStreamReader(cmd.getInputStream()));
      BufferedReader stdError = new BufferedReader(new InputStreamReader(cmd.getErrorStream()));


      String s;
      System.out.println("Standard output: ");
      while ((s = stdInput.readLine()) != null) {
         System.out.println(s);
      }


      System.out.println("Standard error: ");
      while ((s = stdError.readLine()) != null) {
         System.out.println(s);
      }

      } catch(IOException e){
        System.out.println("ERROR");
      }
    }
}
e in output su cmd, se eseguo il comando java Avviatore_windows, ottengo:

C:\Users\giorgiomartesi>cd Desktop
C:\Users\giorgiomartesi\Desktop>cd progetto
C:\Users\giorgiomartesi\Desktop\progetto>java Avviatore_windows
Standard output:
-
Rimane bloccato cosi!! Perche ??? Non capisco come mai non si apre l'interfaccia .. Qualcuno può aiutarmi??

4 Risposte

  • Re: Avviare programma java

    Ma dove sta scritto il comando che avvia l'interfaccia ?

    aggiungi:
    Parent root = FXMLLoader.load(getClass().getResource("nomeDellaTuaInterfacciaFXML.fxml"));
    primaryStage.setTitle("Standard Window");
    primaryStage.setScene(new Scene(root, 300, 275));
    primaryStage.show();
  • Re: Avviare programma java

    Questo comando si trova nel file.java Avvio:
    
    import javafx.application.*;
    import javafx.stage.*;
    import javafx.scene.*;
    import javafx.fxml.*;
    import java.time.LocalDate;
    
    public class Avvio extends Application{
      public static void main(String[] args) {
        launch(args);
      }
      @Override
      public void start(Stage stage) throws Exception{
        Parent root = FXMLLoader.load(getClass().getResource("interfaccia/newinterfaccia.fxml"));
        Scene scene = new Scene(root);
        stage.setTitle("Programma");
        stage.setScene(scene);
        stage.show();
      }
    }
    
    non capisco perchè non riesco a farla partire??
  • Re: Avviare programma java

    Questo comando si trova nel file.java Avvio:
    Che significa che ci sono altri file?
    Ci deve essere un solo Main, altrimenti devi specificare quale deve essere eseguito.
    Prova a rifare un progetto dove cerchi solo di visualizzare la finestra.
    Fatti aiutare da un ide.
  • Re: Avviare programma java

    Il fatto particolare è che nel mac riesco a fare partire il programma usando il seguente codice:
    
    import java.io.*;
    
    public class Avviatore_mac{
      public static void main(String[] args){
        Process cmd;
        String b = "java -cp .:poi/*:poi/ooxml-lib/*:poi/lib/*:poi/commons-compress/* Avvio";
        try{
          cmd = Runtime.getRuntime().exec(b);
          } catch(IOException e){
            System.out.println("ERROR");
          }
        }
    }
    
    mentre per windows ottengo quel problema .. non riesco a capire come mai ????
Devi accedere o registrarti per scrivere nel forum
4 risposte