Olá! O meu aplicativo executa normalmente no eclipse, porém, quando eu exporto como Runnable JAR file, ele não abre. Quando eu executo pelo cmd, mostra o “Error: JavaFX runtime components are missing, and are required to run this application”. Se caso eu não informar no VM arguments a lib, ele no eclipse mesmo mostra esse erro. Depois que eu informo a lib, ele não mostra mais esse erro e executa normalmente, porém, quando eu crio o .jar e executo pelo cmd, mostra. Alguém pode me ajudar?
Diga, qual a versão do Java esta usando?
Estou usando o “jdk-17.0.5” e o “javafx-sdk-19”.
no VM arguments eu coloco: “–module-path “C:\Program Files\Java\javafx-sdk-19\lib” --add-modules javafx.controls,javafx.fxml”.
No eclipse, roda. Mas quando eu exporto, como eu disse, dá o erro que daria no eclipse, caso se eu não tivesse informado isso no VM arguments.
No caso, se voce esta usando outras Jar(s) que nao sejam modular precisar colocar -cp
Essa mensagem diz que está faltando coisas
Não basta somente exportar o Jar principal, são necessarios todos eles caso existam
Me desculpe, mas eu não entendi o colocar -cp. Você poderia detalhar mais, por gentileza? Como faço isso?
Este é o projeto que estou com problema: GitHub - FlavioJCM/CaraCoroa
Flavio, não sei se está faltando alguns Jars para rodar sua aplicação, mas vou te passar um exemplo rodando em Java 8 e rodando em Java >= 9 modular, então você analisa o que pode estar acontecendo.
Java 8
java -jar Ensemble8.jar
Java >= 9 ( modular )
/usr/bin/java/openj9/jdk-14.0.1+7/bin/java -Dprism.verbose=true --module-path /usr/bin/java/javafx/javafx-sdk-19.0.2.1/lib/ --add-modules javafx.controls,javafx.graphics,javafx.media,javafx.web -jar Ensemble8.jar
No caso do modular vamos supor que existem mais Jar(s), basta adicionar no classpath
/usr/bin/java/openj9/jdk-14.0.1+7/bin/java -Dprism.verbose=true --module-path /usr/bin/java/javafx/javafx-sdk-19.0.2.1/lib/ --add-modules javafx.controls,javafx.graphics,javafx.media,javafx.web -cp Ensemble8.jar:. ensemble.EnsembleApp