Frage

ich starten Sie die folgende Befehlszeile (Prozess) von einem Windows-VC ++ 6-Programm mit Createprocess (oder _spawnv ()):

  • java -cp c: \ dir \ updates.jar; c: \ dir \ main.jar Haupt

und Klasse Updates in updates.jar (overiding einige in main.jar) gelesen oder wurde nicht gefunden. Es ist, als ob die updates.jar Bibliothek nicht gefunden oder gelesen werden.

Wenn ich die gleiche Zeile aus einer Verknüpfung starten, oder über die Befehlszeile richtig, alles ist gefunden und korrekt ausgeführt.

Wenn ich eine JVM von der Kommandozeile starten, halten Sie es ausgeführt wird, und starten Sie DANN die ausführbare Stub (oben), dann funktioniert auch alles OK. (Dies macht es aussehen wie das Problem etwas Dateirechte ist).

würde Einsicht sehr geschätzt werden!

- Edward

War es hilfreich?

Lösung

Versuchen Dienstprogramm Microsoft FileMon, um herauszufinden, was los ist. Stellen Sie die umfassen Filter auf „Updates“ konzentrieren auf das Problem.

http://technet.microsoft.com/en-us/sysinternals /bb896642.aspx

Andere Tipps

Haben Sie diese auf einer anderen Maschine versucht? Ein weiteres O? Welche JVM verwenden Sie? Haben Sie unterschiedliche JVMs versucht?

Können Sie uns mit einem minimalen Beispiel schaffen, die das Problem demonstriert?

Danke jdigital

Ich habe versucht, FileMon und es zeigte mir, was ich falsch mache. Die ausführbare calling Createprocess () hatte eine nicht geschlossene Datei-Handle von einem Versuch, updates.jar früher das Update JAR zu kopieren. Bad-Code, der in der Produktionsumgebung funktioniert, aber nicht in der Testumgebung.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top