java-forum.org
JBoss Seam
Alter Preis: 39,95 €
Jetzt: 0,00 €

zzgl. Versandkosten

Zurück   java-forum.org > Java - Programmierung > Plattformprogrammierung

Plattformprogrammierung OSGi, Eclipse RCP und Co.

Antwort     Ist dieses Thema erledigt?
Themen-Optionen Thema durchsuchen Ansicht
Alt 03.03.2010, 16:01   #1 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
Standard Runtime.getRuntime().exec() und Eclipse

Habe ein Problem mit Runtime.getRuntime().exec() und Eclipse.
Versuche Eclipse darüber zu starten, aber es passiert nicht viel.
Die console wird geöffnet (benutze -console und -consolelog) und der Splashscreen erscheint. Das wars dann aber auch schon.
Danach passiert nichts mehr.
Der Commandstring ist richtig, schließlich läuft er in meiner Verknüpfung problemlos (und ebenso in der cmd)

Weiß einer was da falsch läuft?

Hier mal der Befehl:

Java Code: Quelltext in neuem Fenster öffnen
1
Runtime.getRuntime().exec("D:/Ordner/eclipse3.5/eclipse/eclipse.exe -vm D:/Ordner/SUN/jdk1.5.0_14/bin/java.exe -data D:/einige/ordner/mit/unter/ordnern -console -consolelog", null, new File("D:/Ordner/eclipse3.5/eclipse/"));

Anmerkung:
Sowohl der Befehl, als auch

Java Code: Quelltext in neuem Fenster öffnen
1
Runtime.getRuntime().exec("D:/Ordner/eclipse3.5/eclipse/eclipse.exe -vm D:/Ordner/SUN/jdk1.5.0_14/bin/java.exe -data D:/einige/ordner/mit/unter/ordnern -console -consolelog");

gehen nicht
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 03.03.2010, 22:34   #2 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Wildcard
 
Registriert seit: 10.11.2004
Beiträge: 18.262
Abgegebene Danke: 0
Erhielt 128 Danke für 126 Beiträge
Schau mal in D:/einige/ordner/mit/unter/ordnern/.metadata/.log nach
__________________
Take back the Desktop
Wildcard ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.03.2010, 09:09   #3 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
In der vorhanden steht nichts dazu drinne.
Die Meldungen die dort stehen sind alle während dem produktiven Einsatz aufgetreten.
Hab die Datei deswegen mal umbenannt und es erneut versucht, es wird aber keine neue Log datei erstellt
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.03.2010, 14:36   #4 (permalink)
Stammbenutzer
Megabyte
 
Benutzerbild von musiKk
 
Registriert seit: 05.11.2007
Beiträge: 1.449
Abgegebene Danke: 0
Erhielt 19 Danke für 19 Beiträge
exec() liefert ein Process-Objekt. Dort mal getErrorStream() und getInputStream() und schauen, was da so schief läuft.

Ich könnte mir ja vorstellen, dass das working directory nicht stimmt (in der Verknüpfung wird dieses iirc standardmäßig auf den Pfad der exe gesetzt). Das lässt sich übrigens in einer der exec() -Versionen angeben. Wobei... wenns von der cmd aus läuft...
__________________
PNs mit Fragen zu Threads werden ignoriert.

Projekte: Classreader | more to come... stalled...
musiKk ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 04.03.2010, 15:44   #5 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
in der ersten Version wird das Working Directory gesetzt
Desweiteren lasse ich ja extra die Osgi Console über -console und -consolelog öffnen und loggen.
Aber auch die Ausgabe des ErrorStreams oder des InputStreams ergaben nichts. Sind beide scheinbar leer.
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 05.03.2010, 09:08   #6 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
Hab ne Lösung gefunden, die zwar so ihre Nachteile mit sich bringt, aber naja...

Wer Eclipse Programmatisch starten will, muss folgendes verwenden:

Java Code: Quelltext in neuem Fenster öffnen
1
Runtime.getRuntime().exec("java -jar PFADZUECLIPSE/plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar");

Wobei PFADZUECLIPSE mit dem entsprechenden Pfad auszutauschen ist.

Zu beachten ist auch, dass der Schalter -console dann nicht mehr wirkt.
Startet man Eclipse über die CMD auf diese weise, wird der Log einfach in die cmd geschrieben
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 05.03.2010, 16:40   #7 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
Es gibt natürlich auch noch die Möglichkeit das ganze über Bat dateien zu lösen (die dann das gleicher Verhalten erzeugen, wie bei einer Verknüpfung)
Rein programmatisch, kann man den nativen Launcher von Eclipse jedoch scheinbar nicht ansprechen
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 05.03.2010, 20:20   #8 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Wildcard
 
Registriert seit: 10.11.2004
Beiträge: 18.262
Abgegebene Danke: 0
Erhielt 128 Danke für 126 Beiträge
Zitat: Sonecc
Beitrag anzeigen
Rein programmatisch, kann man den nativen Launcher von Eclipse jedoch scheinbar nicht ansprechen
Das kann nicht sein. Vermutlich war es ein so banales Problem wie zB das du den output und Error Stream nicht gelesen hast und der Prozess daraufhin nach kurzer Zeit blockiert
__________________
Take back the Desktop
Wildcard ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 08.03.2010, 15:04   #9 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
ich hab gesucht und nix dazu gefunden.
Das einzige was ich gefunden habe, war eben oben beschriebener Weg.
Output und Error Stream lesen hat bei mir auch nichts gebracht.

Wenn du also eine Lösung hast, wie man den nativen Launcher ansprechen kann, würde ich mich freuen. Ich habe dazu keine Lösung gefunden und gebe mich daher mit meiner Lösung zufrieden
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 08.03.2010, 20:04   #10 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Wildcard
 
Registriert seit: 10.11.2004
Beiträge: 18.262
Abgegebene Danke: 0
Erhielt 128 Danke für 126 Beiträge
Folgendes funktioniert bei mir perfekt, also schau mal genauer was bei dir anders ist:
Java Code: Quelltext in neuem Fenster öffnen
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
public class StartEclipse {
 
    /**
     * @param args
     */
    public static void main(String[] args) {
        String path = System.getProperty("eclipse.home");
        ProcessBuilder builder = new ProcessBuilder(path+"/eclipse.exe", "-data", "C:\\Test");
        try {
            Process p = builder.start();
            p.waitFor();
            System.out.println("done");
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (InterruptedException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
In der Launch Configuration bei VM Arguments folgenden Eintrag hinzufügen: -Declipse.home=${eclipse_home}
__________________
Take back the Desktop
Wildcard ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 09.03.2010, 05:51   #11 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
kann ich erst morgen testen

danke jedenfalls schonmal für die geduldige hilfe^^
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.03.2010, 09:05   #12 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
Das gleiche wie vorher.
Nach 3 Minuten warten, hab ich den Startvorgang abgebrochen.
Es passiert einfach nichts, keine log meldungen, keine Progress Bar im Splash bild, nach 3 minuten keine regung.
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.03.2010, 09:26   #13 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Wildcard
 
Registriert seit: 10.11.2004
Beiträge: 18.262
Abgegebene Danke: 0
Erhielt 128 Danke für 126 Beiträge
Versuch auf diese Art ein frisches Eclipse (ein Standardpaket von eclipse.org) in einem neuen Workspace zu starten um Fehlerquellen zu eliminieren. Verwende am besten exakt den gleichen Code wie ich.
__________________
Take back the Desktop
Wildcard ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.03.2010, 10:52   #14 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
ich korrigiere meine aussage mal:

Ich habe die (für mich essentiellen) Flags -console und -consolelog hinzugefügt.
Damit startet es nicht. Die Console wird geöffnet, aber es passiert sonst nichts
Lasse ich sie weg startet es (bei einer frischen Eclipse Version mit leerem Workspace).
Auf die Console kann ich jedoch nicht verzichten.
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 10.03.2010, 20:26   #15 (permalink)
Java-Forum Team
Moderator
 
Benutzerbild von Wildcard
 
Registriert seit: 10.11.2004
Beiträge: 18.262
Abgegebene Danke: 0
Erhielt 128 Danke für 126 Beiträge
Du kannst bei -console eine Portnummer mitgeben unter der du dann eine OSGi Konsole andocken kannst. Anders wird das wohl nicht funktionieren.
__________________
Take back the Desktop
Wildcard ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Alt 11.03.2010, 09:28   #16 (permalink)
Stammbenutzer
Team Plugin-System
Team JCupGames
Kilobyte
Themenstarter
 
Benutzerbild von Sonecc
 
Registriert seit: 25.09.2009
Beiträge: 333
Abgegebene Danke: 5
Erhielt 20 Danke für 20 Beiträge
Die Portangabe war der blockende Punkt.
Nun startet das Eclipse, logt aber nicht in die Console...
Es wird also die Console geöffnet, sie bleibt jedoch leider leer.
__________________
Zitat:
Sometimes you begin to understand the problem when you finish it's solution
Sonecc ist offline  
Bei Google nach dem markiertem Wort suchen Bei Wikipedia nach dem markiertem Wort suchen Im Forum nach dem markiertem Wort suchen
Mit Zitat antworten
Antwort     Ist dieses Thema erledigt?

Lesezeichen

Latex Maths & Physics Editor ...

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln
Es ist Ihnen erlaubt, neue Themen zu verfassen.
Es ist Ihnen erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wie Spring in Eclipse Galileo installieren? Raumsonde Allgemeines EE 5 15.01.2010 08:33
Wichtige bzw. nützliche Eclipse Plugins maki IDEs und Tools 3 13.08.2009 13:13
Warum Eclipse mehr als nur einen Blick wert ist Wildcard Plauderecke 38 02.06.2009 21:28
Eclipse RCP + Maven + Eclipse IDE tuxedo Deployment 4 16.10.2008 14:31
problem mit applet... redman Deployment 0 27.01.2004 09:46


Alle Zeitangaben in WEZ +2. Es ist jetzt 10:00 Uhr.


Powered by vBulletin® Version 3.8.6 (Deutsch)
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.2
Thanks for Smilies by smilies.4-user.de