Cách thêm library vào project Java

Hi ! cho em hỏi cách thêm một library có sẵn vào project để copy qua máy khác vẫn sử dụng được ( có sẵn library ) . Hiện tại em có một thư viện javaFX em click chuột phải chọn build path ---> add library thêm các file jar vào với đường dẫn ngoài project VD : desktop/lib thì chạy bình thường nhưng đặt thư viện javaFX vào project thì lại bị lỗi. Em cho project vào thư mục A VD ./A/project và đặt thư viện đó vào thư mục A ( ./A/lib ) cũng vẫn bị lỗi. Cho em hỏi cách fix như nào ạ ? em search google mà không thấy ai có cùng câu hỏi hết á :cry:

Xem trong có lẽ nó không định nghĩa khóa Class-Path: trong META-INF/MANIFEST.MF không chính xác.

4 Likes

cảm ơn anh @SITUVN.gcd theo hướng dẫn của anh, em fix được rồi nhưng còn lỗi cấu hình cho run, phải vào run configurations --> argument --> VM arguments thêm đoạn này --module-path "ĐƯỜNG DẪN ĐẾN LIB" --add-modules javafx.controls,javafx.fxml. Máy nào muốn chạy được javafx thì phải cấu hình cho run bằng đoạn trên. Có cách nào để mặc định luôn không ạ ? copy qua máy khác bấm run là tự chạy khỏi phải cấu hình. hướng dẫn ở trang chủ ở đây ạ ( máy em và mọi người dùng eclipse)
https://openjfx.io/openjfx-docs/

3 Likes

Hi there,

Cậu nên cân nhắc dùng 1 build tool như maven để build. Nó sẽ giúp cậu pull các thư viện về một cách tự động, tránh phải add thư viện bằng tay, cũng như giúp cậu giải quyết vấn đề ở việc chạy project trên các máy khác nhau.
Cậu có thể tham khảo cách build ở official doc sử dụng maven, hoặc thử đọc project này.

Hope it helps.

4 Likes

@library anh ơi cho em hỏi thêm, các máy khác có cần cài maven hay modules gì nữa không ? vì đối với trường hợp của em, khi nộp bài, máy tính của cô và máy ở trường chỉ cài mỗi JDK với eclipse, có máy win, linux, mac. mà yêu cầu chỉ cần click run là phải chạy được. Em không thể bắt cô cài thêm hay cấu hình máy được nên em phải “dồn” tất cả mọi thứ vào 1 project vì em có dùng nhiều thư viện ngoài cái có sẵn trong JDK :cry:

Mình nhớ là maven có chức năng export thành JAR file đó. Bạn thử xem.

5 Likes

không được export ra file jar anh ơi, phải nộp nguyên project để cô chấm điểm ạ

Hm, cậu cần cài maven và setup maven trên eclipse ở các máy khác. Tớ nghĩ cậu cần manual để hướng dẫn cách setup maven và cách import project vào eclipse. Sau đó, giảng viên chỉ cần “click and run” trên eclipse thôi.
Cậu có thể thương lượng với giảng viên việc đó không?

4 Likes

Ủa, vậy cái click ở đây là click gì vậy? :thinking:
Mở Eclipse, click vào nút Run
Hay là click vào file exe.

Do mình hiểu nhầm sang click vào file exe rồi chạy luôn, nên mình mới đưa ra cách tạo executable jar file đó

5 Likes

khi em nộp project, cô import vào eclipse rồi click run là phải chạy đó anh @hungsteve . Thông thường thì dùng những cái có sẵn trong JDK thôi, nhưng em muốn bài tập của em sinh động hơn nên em dùng thư viện bên ngoài. Project em làm xong rồi, chạy ổn trên máy của em, nhưng qua máy khác thì phải cấu hình lại, cài path nữa. Mà máy trường lại không có internet, ngay cả JDK cũng bản JDK 7 và eclipse từ thời 2010 . :cry:

cảm ơn anh tư vấn, Em dùng gradle thấy cũng ổn, chắc phải tự viết document và config từng máy :cry:

4 Likes

Hm, nếu máy trường cậu ko có mạng, tớ e là cậu sẽ gặp chút rắc rối với maven và gradle.
Maven với gradle sẽ tải thư viện về từ repository.
Tớ nghĩ nếu vậy, cậu có thể thử Ant build: native support cho eclipse từ lâu rồi.

Edit: cậu có thể gặp cả vấn đề với jdk nữa. Java version cậu dùng cho project là java 11, nên cậu không dùng java 7 để compile được đâu, trừ khi cậu target java 7 khi build ở máy cậu @ThaoNguyen1
Cậu nên cân nhắc chuẩn bị cả phần đó.

4 Likes

Vậy thì ez rồi, tạo 1 thư mục mới trong project, thường là libs, copy cả đám thư viện vào, sau đó clean hết tất cả imported library rồi add lại tất cả thư viện trong thư mục libs.

Khỏi cần maven và gradle.

6 Likes

đặt cả thư mục JDK11 vào project luôn, qua máy khác có chạy được không ạ ?

1 Like

tất nhiên là không rồi

4 Likes

Không cần đặt JDK11 vào project, nhưng nên thiết lập Eclipse sao cho giống như máy chấm.

Sau khi thử Eclipse mới nhất thì nó không cho đổi VM của IDE. Giờ có cách chày cối như vầy.

Đầu tiên là bạn tải tải JDK7 về. Sau đó kiểm tra phiên bản của Eclipse trên trường, chọn File -> About Eclipse, nó hiện cái thông báo tựa tựa thế này.

Lấy được phiên bản Eclipse trường đang dùng, thì vô trang Eclipse Packaging Project để download phiên bản tương ứng.

Sau đó chạy Eclipse rồi thiết lập JVM Path gì gì đó, cho cái path trỏ đến JDK7. Cuối cùng bạn copy cái project bạn làm vào coi có chạy được hay không. :V

10 Likes

cảm ơn anh :heart_eyes:

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?