Hướng dẫn can you use java with python? - bạn có thể sử dụng java với python không?
Tôi đang sử dụng OSX 10.10.2 và đã thành công trong việc sử dụng JPype. Show Chạy vào các vấn đề cài đặt với JNIUS (những người khác cũng vậy), Javabridge đã cài đặt nhưng đã gây ra lỗi bí ẩn khi tôi cố gắng sử dụng nó, PYJ4 có sự bất tiện này khi phải khởi động một máy chủ cổng trong Java trước, JCC sẽ không cài đặt. Cuối cùng, JPype cuối cùng đã làm việc. Có một nĩa được bảo trì của jpype trên github. Nó có những lợi thế chính là (a) nó cài đặt đúng cách và (b) nó có thể chuyển đổi mảng java một cách hiệu quả thành mảng numpy ( Quá trình cài đặt là:
Và bạn sẽ có thể Bản demo sau đây đã hoạt động:
Khi tôi thử gọi mã Java của riêng mình, trước tiên tôi phải biên dịch ( PY4J cho phép các chương trình Python chạy trong trình thông dịch Python để truy cập động các đối tượng Java trong máy ảo Java. Các phương thức được gọi như thể các đối tượng Java nằm trong trình thông dịch Python và các bộ sưu tập Java có thể được truy cập thông qua các phương thức thu thập Python tiêu chuẩn. PY4J cũng cho phép các chương trình Java gọi lại các đối tượng Python. PY4J được phân phối theo giấy phép BSD. Dưới đây là một ví dụ ngắn gọn về những gì bạn có thể làm với PY4J. Chương trình Python sau đây tạo ra một thể hiện java.util.random từ JVM và gọi một số phương thức của nó. Nó cũng truy cập vào một lớp Java tùy chỉnh, bổ sung ứng dụng để thêm các số được tạo. Đây là chương trình Java đang thực hiện cùng một lúc (không có mã nào được tạo và không có công cụ nào được yêu cầu để chạy các chương trình này). Phiên bản ứng dụng bổ sung là Gateway.Entry_Point trong đoạn mã trước. Lưu ý rằng chương trình Java phải được bắt đầu trước khi thực hiện mã Python ở trên. Nói cách khác, PY4J không bắt đầu JVM. import py4j.GatewayServer; public class AdditionApplication { public int addition(int first, int second) { return first + second; } public static void main(String[] args) { AdditionApplication app = new AdditionApplication(); // app is now the gateway.entry_point GatewayServer server = new GatewayServer(app); server.start(); } } Hỗ trợ & Tài nguyên %
Tin tức¶
Tôi có thể sử dụng cả Python và Java không?Bạn có thể bắt đầu học ngôn ngữ ngay bây giờ miễn là bạn có kết nối Internet để tải xuống các tệp cài đặt miễn phí của họ.Bạn có thể sử dụng cả Python và Java trên Windows, Mac hoặc Linux, vì vậy bạn không có loại máy tính nào.You can use both Python and Java on Windows, Mac, or Linux, so it doesn't matter what type of computer you have.
Tôi có thể sử dụng lớp Java trong Python không?JPype bắt đầu một JVM trong cùng một quy trình với trình thông dịch Python và cho phép họ giao tiếp bằng giao diện gốc Java (JNI).. |