Cài đặt, cấu hình và sửa một số lỗi khi cài đặt Javafx
Bài đăng này đã không được cập nhật trong 2 năm
JavaFX là nền tảng để tạo và phân phối các ứng dụng dành cho máy tính để bàn cũng như các ứng dụng RIAs (Rich Internet Applications) có thể chạy trên nhiều thiết bị khác nhau. JavaFX dự định thay thế hoàn toàn Swing làm thư viện GUI chuẩn cho Java SE. JavaFX hỗ trợ cho các máy tính để bàn và trình duyệt web trên nền tảng Windows, Linux và macOS. Bài này mình sẽ hướng dẫn các bạn cài đặt và sửa một số lỗi khi cấu hình javafx trên eclipse.
Xem thêm : JavaFX
Với Project bình thường
Đầu tiên, muốn tạo project Javafx thì bạn phải tải về bộ thư viện javafx phù hợp với nền tảng của mình tại : https://gluonhq.com/products/javafx/
Sau khi tải về, các bạn giải nén thư mục vừa rồi tại một nơi nào đó trong máy tính của bạn (bất cứ nơi nào đều được), ở đây trên máy tính của mình thì thư viện openjfx được lưu tại /media/trannguyenhan01092000/LEARN/openjfx-11.0.2_linux-x64_bin-sdk/javafx-sdk-11.0.2 (ubuntu, các bạn dùng win hay mac cứ làm tương tự nha).
Và bây giờ, mở eclipse lên.
Tạo một thư viện người dùng (User Library) mới trong Window -> Preferences -> Java -> Build Path -> User Libraries -> New
Đặt tên cho thư viện javafx của bạn rồi OK, sau đó thêm các file JAR vào bộ thư viện này. Nhấn vào Add External JARs
, chọn tới thư mục mà bạn giải nén file openjfx bạn tải ở về bên trên, trong phần lib chọn tất cả các file có đuôi .jar, xong thì Apply and Close
Bây giờ tạo một Project Java, Chọn File -> New -> Java Project
ở đây mình tạo một Project và đặt tên cho nó là HelloJavafxDemo.
Cuối cùng, bạn chỉ cần thêm thư viện mình vừa tạo vào classpath là được, Nhấn chuột phải vào Project của bạn Chọn Build Path -> Configure Build Path
, tại phần classpath nhấn vào Add Library -> User Library -> chọn thư viện javafx bạn vừa tạo
rồi nhấn Finish
, rồi nhấn lần lượt Apply
, Apply and Close
.
Cuối cùng bạn có thể thấy bên cửa sổ explorer đã có thêm thư viện Javafx mà bạn thêm vào, vậy là đã xong.
Fix lỗi Error: JavaFX runtime components are missing, and are required to run this application
, trên trang chủ của openjfx có nói tới lỗi này và một số bạn có thể sẽ mắc lỗi này trong khi chạy chương trình.
Để sửa, các bạn chọn Run -> Run Configurations
, trong phần Arguments nhập --module-path <path>/lib/ --add-modules=ALL-MODULE-PATH
, trong đó path là đường dẫn tới thư mục mà bạn giải nén ra file openjfx đã tải về, ví dụ của mình sẽ là --module-path /media/trannguyenhan01092000/LEARN/openjfx-11.0.2_linux-x64_bin-sdk/javafx-sdk-11.0.2/lib/ --add-modules=ALL-MODULE-PATH
, vậy là đã xong, Apply và Run để xem kết quả.
Với Maven Project
Với maven project thì dễ dàng hơn, các bạn tạo một project java bình thường. Sau khi tạo xong nhấn chuột phải vào project vừa tạo chọn Configure -> Convert to Maven Project,
các bạn cứ để mặc định cũng được rồi ấn Finish
. Trong file pom.xml
thêm phụ thuộc javafx như sau :
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>Week3SoftwareEngineering</groupId>
<artifactId>Week3SoftwareEngineering</artifactId>
<version>V1</version>
<dependencies>
<dependency>
<groupId>org.openjfx</groupId>
<artifactId>javafx-controls</artifactId>
<version>14</version>
</dependency>
</dependencies>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<release>11</release>
</configuration>
</plugin>
</plugins>
</build>
</project>
Nhấn chuột phải vào Project của bạn chọn Refresh
, nếu như trong phần Explorer
hiện ra thêm thư viện Maven Dependencies
thì là OK đã xong. Còn nếu bạn nào Refresh mà không thấy thì tốt nhất tắt Eclipse đi rồi vào lại, lần này chắc chắn là thấy =)). Nếu các bạn cũng mắc lỗi Error: JavaFX runtime components are missing, and are required to run this application
thì cũng fix y hệt như bên trên nha.
Nguồn : https://trannguyenhan.github.io/
All rights reserved