[RESOLVIDO]JavaFX no Eclipse

Pessoal, iniciei o tutorial da Oracle “Get Started with JavaFX” com o Eclipse, porém estou com um problema que não consigo resolver. O programa lança a seguinte exceção:

[color=red]Exception in thread “main”[/color] [color=blue]java.lang.IllegalArgumentException[/color]: [color=red]expected file name as argument
at com.sun.javafx.css.parser.Css2Bin.main([/color][color=blue]Css2Bin.java:44[/color][color=red])[/color]

Segue o código!

package com.oracle;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.PasswordField;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.scene.layout.HBox;
import javafx.scene.paint.Color;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;

public class Welcome extends Application {

	public static void main(String[] args) {
		launch(args);
	}

	@Override
	public void start(Stage primaryStage) {
		primaryStage.setTitle("JavaFx Welcome");

		GridPane grid = new GridPane();
		grid.setAlignment(Pos.CENTER);
		grid.setHgap(10);
		grid.setVgap(10);
		grid.setPadding(new Insets(25, 25, 25, 25));

		Text scenetitle = new Text("Welcome");

		scenetitle.setFont(Font.font("Tahoma", FontWeight.NORMAL, 20));

		grid.add(scenetitle, 0, 0, 2, 1);

		Label userName = new Label("Usar Name:");
		grid.add(userName, 0, 1);

		TextField userTextField = new TextField();
		grid.add(userTextField, 1, 1);

		Label pw = new Label("Password:");
		grid.add(pw, 0, 2);

		PasswordField pwBox = new PasswordField();
		grid.add(pwBox, 1, 2);

		Button btn = new Button("Sign in");
		HBox hbBtn = new HBox(10);
		hbBtn.setAlignment(Pos.BOTTOM_RIGHT);
		hbBtn.getChildren().add(btn);
		grid.add(hbBtn, 1, 4);

		final Text actiontarget = new Text();
		grid.add(actiontarget, 1, 6);

		// Evento do Botão
		btn.setOnAction(new EventHandler<ActionEvent>() {

			@Override
			public void handle(ActionEvent arg0) {
				actiontarget.setFill(Color.FIREBRICK);
				actiontarget.setText("Sign in button pressed");

			}
		});

		// Comando Final
		Scene scene = new Scene(grid, 300, 275);
		primaryStage.setScene(scene);
		primaryStage.show();

	}

}

Depois de fuçar bem o eclipse resolvi o problema.

1° - Criei uma pasta lib.
2° - Adicionei o jfxrt.jar na pasta lib.
3° - Add to Build Path
4° Entrei nas propriedades do jfxrt.jar na “Referenced Libraries”.
5° Selecionei Run/Debug Settings>Css2Bin
6° Marquei as seguintes caixas:
-Include system libraries when searching for a main class
- Include inherited mains when searching for a main class

Bom, se alguém passar por este problema, está aí a resolução.

1 curtida