Skip to Main Content

Java Programming

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Trouble running JavaBallPuzzle. It doesn't run

e37c10de-847c-4789-b50b-9e09f1131e8aMay 2 2018 — edited Jun 1 2018

I am getting this error.

It is in portuguese...

Eu@computador #>java -jar JavaPuzzleBall.jar

Erro: Não foi possível localizar nem carregar a classe principal javafxapplication01.JavaPuzzleBall

Causada por: java.lang.NoClassDefFoundError: javafx/application/Application

I am with openJDK10.0.1 in Ubuntu 18.04.

Help please.

Comments

843810
Try this
String cmd = "java -jar \"" ++workingDir ++"\"/SwingApplication.jar"; 
Edited by: DynamicBasics on Jul 15, 2010 5:31 PM
User_64CKJ
A good case for using ProcessBuilder.
843810
String cmd = "java -jar \"" ++workingDir ++"\"/SwingApplication.jar";

doesnt seem to work, so i tried using process builder as suggested

ProcessBuilder pb = new ProcessBuilder("java -jar");
pb.directory(new File(workingDirPath + "/SwingApplication.jar"));
Process p = pb.start();

. but getting an exception

java.io.IOException: Cannot run program "java -jar" (in directory "C:\Run Application\SwingApplication.jar"): CreateProcess error=267, The directory name is invalid

Do I need to change the directory path in this?
User_64CKJ
javaquests wrote:
..ProcessBuilder pb = new ProcessBuilder("java -jar");
pb.directory(new File(workingDirPath + "/SwingApplication.jar"));
Process p = pb.start();

. but getting an exception

java.io.IOException: Cannot run program "java -jar" (in directory "C:\Run Application\SwingApplication.jar"): CreateProcess error=267, The directory name is invalid
While..
C:\Run Application\
..might be a directory, is..
C:\Run Application\SwingApplication.jar
?

I was thinking something more like this (untested)..
String path = workingDirPath + "/SwingApplication.jar";
String[] command = {
	"java", 
	"-jar",
	path
};
ProcessBuilder pb = new ProcessBuilder(command);
Process p = pb.start();
BTW - when posting code, code snippets, HTML/XML or input/output, please use the code tags. The code tags protect the indentation anf formatting of the sample. To use the code tags, select the sample and click the CODE button.
843810
javaquests wrote:
String cmd = "java -jar \"" ++workingDir ++"\"/SwingApplication.jar";

doesnt seem to work, so i tried using process builder as suggested
The command to be finally executed is
C:\Program Files\Java\jdk1.5.0\bin\java.exe -jar C:\Run Application\SwingApplication.jar
as the path has spaces, enclose in double quotes
"C:\Program Files\Java\jdk1.5.0\bin\java.exe" -jar "C:\Run Application\SwingApplication.jar"
This goes into the string variable like this
String cmd = "\"C:\\Program Files\\Java\\jdk1.5.0\\bin\\java.exe\" -jar \"C:\\Run Application\\SwingApplication.jar\"";
check the above command once.

Without the absolute path to the JAVA file, the control probably is searching for it in the current working directory.
843810
thank you so much it worked now.
843810
javaquests wrote:
thank you so much it worked now.
You are welcome, and it is a good practice to mark the question as 'answered'.

Edited by: DynamicBasics on Jul 15, 2010 10:38 PM
1 - 7

Post Details

Added on May 2 2018
12 comments
1,184 views