2013-06-11 5 views
1

J'ai deux applications Java Swing et je dois être en mesure d'exécuter le premier à partir du second. J'ai compilé le premier dans un pot et je l'ai placé dans le classpath du second. J'appelle la classe principale du premier pot de l'application mais tout ce que je vois est un cadre vide. Le principal de mon premier pot ressemble à ceci:Appel d'un fichier jar externe dans classpath à partir d'une application Java

import java.awt.EventQueue; 
import java.awt.Frame; 
import javax.swing.JDialog; 
public class AskulLibrary extends Frame implements Runnable{ 
final Frame frame; 
    public AskulLibrary(Frame frame) { 
     this.frame = frame; 
    } 

    public void run() { 
     frame.show(); 
    } 

    public static void main(String[] args) { 
     JDialog.setDefaultLookAndFeelDecorated(true); 
     // Throw a nice little title page up on the screen first 
     new Splash().showSplash(3000); 
     EventQueue.invokeLater(new AskulLibrary(new JLibrary())); 
    } 
} 

J'appelle cette classe principale de la deuxième application comme ceci:

import com.AskulLibrary; 
import java.awt.Frame; 
public class MainFrame extends JFrame{ 
     AskulLibrary lib; 
     Frame frame; 
    public MainFrame(){ 
    frame = new new Frame(); 
    lib = new AskulLibrary (frame); 
    lib.run(); 

} 

} 

que je fais quelque chose de mal quelque part parce qu'au lieu d'initialisation le premier Jar je reçois un cadre vide. Je ne veux pas courir le pot comme celui-ci bien que ce soit en cours d'exécution du premier programme avec succès:

Runtime.getRuntime().exec("java -jar lib/Myfirstjar.jar"); 
+1

1) 'cadre = new nouveau cadre()' Ce ne serait pas compiler. Pour une meilleure aide plus tôt, postez un [SSCCE] (http://sscce.org/). 2) Pourquoi AWT plutôt que Swing? Voir cette réponse sur [Swing extras sur AWT] (http://stackoverflow.com/a/6255978/418556) pour de nombreuses bonnes raisons d'abandonner l'utilisation des composants AWT. Si vous devez prendre en charge les anciennes API basées sur AWT, voir [Mélanger des composants légers et lourds] (http://www.oracle.com/technetwork/articles/java/mixing-components-433992.html). –

Répondre

2
Questions connexes