2011-08-04 16 views
13

Tôi mới sử dụng java. Tôi có một sự nhầm lẫn mà thông dịch viên được sử dụng để thực hiện các chương trình java như tôi có thể thấy hai java.exe một bên trong thư mục bin & khác bên trong thư mục bin của jre.sự khác biệt giữa java.exe của bin và java.exe của jre?

Đang chờ câu trả lời có giá trị của các chuyên gia !!!

Tôi muốn thêm một số chi tiết để xóa truy vấn của tôi:

Giả sử java được cài đặt trong C: \ Program Files \ Java \ Jdk1.6 Bây giờ, trong thư mục này có thư mục jre, thư mục bin & thư mục khác cũng như cho phép tập trung vào hai điều này. Thư mục này .. \ jre \ bin chứa thư mục java.exe & .. \ bin cũng chứa java.exe Vì vậy, mối quan tâm của tôi là trình thông dịch java được sử dụng để thực thi chương trình java.

Tôi hy vọng điều này sẽ giúp bạn hiểu rõ hơn câu hỏi của tôi

+0

Tôi đề xuất đặt classpath cho jdk/bin so với jre/bin; nếu bạn đã cài đặt JDK. Cả hai java.exe sẽ làm công việc tương tự cho bạn nhưng jdk có thực thi nhiều hơn cho phát triển java như javac.exe. –

Trả lời

1

JRE: Java Runtime Environment. Về cơ bản, nó là máy ảo Java nơi các chương trình Java của bạn chạy trên đó. Nó cũng bao gồm các plugin trình duyệt để thực thi Applet.

JDK: Đó là Bộ công cụ phát triển phần mềm đầy đủ tính năng cho Java, bao gồm JRE và các trình biên dịch và công cụ (như JavaDoc và Java Debugger) để tạo và biên dịch chương trình.

Thông thường, khi bạn chỉ quan tâm đến việc chạy các chương trình Java trên trình duyệt hoặc máy tính, bạn sẽ chỉ cài đặt JRE. Đó là tất cả những gì bạn cần. Mặt khác, nếu bạn đang lập kế hoạch để làm một số chương trình Java, bạn cũng sẽ cần JDK.

Đôi khi, mặc dù bạn không có kế hoạch thực hiện bất kỳ Phát triển Java nào trên máy tính, bạn vẫn cần cài đặt JDK. Ví dụ, nếu bạn đang triển khai một WebApp với JSP, bạn về mặt kỹ thuật chỉ chạy các Chương trình Java bên trong máy chủ ứng dụng. Tại sao bạn cần JDK? Bởi vì máy chủ ứng dụng sẽ chuyển đổi JSP thành Servlets và sử dụng JDK để biên dịch các servlet. Tôi chắc chắn có thể có nhiều ví dụ hơn.

+1

Cảm ơn bạn đã trả lời ur. Nhưng đây không phải là điều tôi muốn biết. Hãy để tôi giải thích u chi tiết hơn ..... Giả sử java được cài đặt trong C: \ Program Files \ Java \ Jdk1.6 Bây giờ, trong thư mục này có thư mục jre, thư mục bin và các thư mục khác cũng nhưng cho phép tập trung vào các hai. Thư mục này .. \ jre \ bin chứa thư mục java.exe & .. \ bin cũng chứa java.exe Vì vậy, mối quan tâm của tôi là trình thông dịch java được sử dụng để thực thi chương trình java. Tôi hy vọng điều này sẽ giúp bạn hiểu rõ hơn câu hỏi của tôi. – anshul

1

Kiểm tra thuộc tính java.home. Nó sẽ trỏ đến một hoặc khác. Ở đây tôi có được ..

Name  Value 
java.home C:\Program Files\Java\jre6 
0

Nếu bạn cài đặt JRE, sau đó java.exe nên ở đây C: \ Program Files \ Java \ jre6 \ bin

Nếu bạn cài đặt JDK, sau đó java. exe sẽ ở hai nơi: C: \ Program Files \ Java \ jdk1.6.0_25 \ bin C: \ Program Files \ Java \ jdk1.6.0_25 \ jre \ bin

Nếu bạn cài đặt cả jdk và jre, bạn có thể so sánh C: \ Program Files \ Java \ jdk1.6.0_25 \ jre với C: \ Program Files \ Java \ jre6 \ bin và chúng sẽ gần giống hoặc chính xác giống nhau, và bạn có thể sử dụng java.exe từ hoặc một, nhưng tôi nghĩ rằng hầu hết mọi người sẽ sử dụng một trong C: \ Program Files \ Java \ jdk1.6.0_25 \ bin

+1

-1: java.exe được cài đặt ở cả hai vị trí theo mặc định. – Daniel

+0

@Daniel không có điều này là sai. nếu bạn không tin tôi, bạn cần tải xuống jre mới nhất từ ​​oracle và cài đặt nó để bạn có thể xem nó như thế nào –

+0

Nhưng đó là sai nếu bạn tải xuống JDK, những gì tôi giả định mọi người sẽ sử dụng ở đây. – Daniel

1

Vui lòng kiểm tra tệp và nộp các tệp java.exe của bạn.

Nó sẽ giống nhau.

Theo tôi, JDK là một loại superset của JRE. Vì vậy, nếu bạn cần thêm các công cụ để xây dựng hoặc biên dịch, JDK là nơi để đi. Nếu không, bạn có thể sử dụng JRE

0

Đối với đường dẫn bạn cung cấp, tôi cho rằng bạn đang sử dụng Windows.

Bây giờ, bạn đang sử dụng java.exe?

Điều đó có thể phụ thuộc vào những gì bạn đang thực hiện. Nếu bạn đang chạy một Applet, một jar hoặc Java Web Start, bạn sẽ sử dụng java.exe đó là trong thư mục bin trỏ bởi biến PATH môi trường của bạn. Bên cạnh đó, nếu bạn mở một bảng điều khiển và thực hiện java bạn sẽ chạy java.exe được chỉ bởi biến 'PATH' của bạn. Nếu bạn đang chạy tệp .bat, hãy kiểm tra xem tệp có sử dụng biến môi trường khác không. Thông thường, hãy sử dụng JAVA_HOME hoặc JAVA_SDK.

8

Từ các ghi chú cài đặt Java SE:

http://www.oracle.com/technetwork/java/javase/documentation/install-windows-142126.html#private

Cài đặt JDK cài đặt một tin Java SE Runtime Environment (JRE), và tùy chọn một bản sao công cộng. Cần có riêng JRE để chạy các công cụ đi kèm với JDK. Nó không có cài đặt đăng ký và được chứa hoàn toàn trong một thư mục jre (thường là tại C:\Program Files\jdk1.6.0\jre) có vị trí chỉ được biết đến với JDK. Mặt khác, công khai JRE có thể được sử dụng bởi các ứng dụng Java khác, được chứa bên ngoài JDK (thường là C:\Program Files\Java\jre1.6.0), được đăng ký với đăng ký Windows (tại HKEY_LOCAL_MACHINE \ SOFTWARE \ JavaSoft), có thể được xóa bằng cách sử dụng Thêm/Loại bỏ chương trình, có thể hoặc có thể không được đăng ký với trình duyệt, và có thể hoặc không có java.exe sao chép vào thư mục hệ thống Windows (làm cho nó nền tảng hệ thống mặc định Java hay không).

Vì vậy, tôi nghĩ bạn nên sử dụng tệp thi hành từ thư mục/bin khi thực thi chương trình Java.

0

Từ kiến ​​thức của tôi, tôi có thể nói không có sự khác biệt ngoài mục đích của jdk và jre cả hai java.exe đều giống nhau.

Các vấn đề liên quan