Làm cách nào để dễ dàng nâng lên khi chạy tệp .jar?


8

Khi cố chạy tệp Jar trình cài đặt, tôi gặp lỗi khi nói rằng quyền truy cập ghi bị từ chối để tạo thư mục trong thư mục Tệp chương trình.

Nhấp chuột phải -> Chạy với tư cách Quản trị viên không khả dụng trên các tệp Jar (Tôi giả sử vì đó là Java.exe tiêu thụ chúng - bản thân chúng không được xử lý như trình bao trực tiếp thực thi).

Cách nhanh nhất và đơn giản nhất để chạy tệp .Jar có độ cao là gì?

Tôi đang đánh giá công cụ này để giới thiệu cho nhóm nhà phát triển của chúng tôi và họ sẽ tự cài đặt nó trên hộp của họ. Tôi muốn một tùy chọn không yêu cầu họ gõ bất cứ điều gì.

Câu trả lời:


6

Để giúp người khác dễ dàng chạy trình cài đặt JAR mà không phải thay đổi tất cả các máy tính của họ, có lẽ bạn sẽ muốn bọc nó bằng một tập lệnh bó nâng và chạy tệp JAR. Bạn có thể thực hiện việc này một cách dễ dàng với PowerToys nâng cao từ Microsoft . Chúng bao gồm một tiện ích hữu ích cho phép bạn khởi chạy bất cứ thứ gì với tư cách quản trị viên bằng cách chỉ cần thêm tiền tố vào elevatelệnh đó.

Khi bạn đã tải chúng xuống, giải nén chúng vào một thư mục và sao chép elevate.cmdelevate.vbsvào thư mục với tệp JAR. Sau đó, viết một tập lệnh bó mới với .cmdphần mở rộng có nội dung sau:

elevate cmd /c start "%CD%\installer.jar"

Điều đó sẽ khởi chạy tệp JAR với trình xử lý mặc định cho các tệp đó trên hệ thống của họ (sử dụng startlệnh của cmd). %CD%trỏ đến thư mục làm việc hiện tại của tập lệnh và là cần thiết vì dòng lệnh nâng cao sẽ bắt đầu c:\windows\system32.

Nếu, vì một số lý do, Java không được cấu hình đúng như trình xử lý mặc định cho các tệp JAR, điều đó sẽ thất bại. Nếu bạn có thể tin tưởng vào việc Java ở cùng một vị trí trên tất cả các hệ thống, thay vào đó bạn có thể làm theo cách này:

elevate "c:\Program Files\Java\jre\bin\java.exe" -jar "%CD%\installer.jar"

Khi bạn đã thực hiện một trong hai cách đó, chỉ cần chạy tệp bó và Windows sẽ nhắc nâng cao quản trị viên và khởi chạy trình cài đặt.

Bao gồm các tập lệnh độ cao, tập lệnh của bạn và các tập tin trình cài đặt trong kho lưu trữ tự giải nén để khởi chạy tập lệnh và bạn có thể gói nó trong một .exetập tin nhỏ . ( 7-Zip là một công cụ nguồn mở tuyệt vời để tạo các tài liệu lưu trữ như vậy.)

Để biết thêm thông tin về PowerToys Độ cao, hãy tham khảo bài viết được liên kết hoặc tệp README có trong phần tải xuống.


Câu trả lời tuyệt vời :) Cảm ơn! Tôi sẽ chờ để chấp nhận nó vì vậy có thể câu hỏi / câu trả lời của bạn sẽ có thêm lưu lượng truy cập (tôi nghĩ nó hoạt động theo cách đó?)
Merlyn Morgan-Graham

@Patches, cách không phải của bên thứ 3 để làm điều này là gì?
Pacerier

@Pacerier Ngay cả Windows 10 vẫn không có phương pháp tích hợp nâng cao từ dòng lệnh.
Bản vá lỗi

2

Tôi vừa có dịp làm điều này và thấy rằng cách dễ nhất, mà không phải tải xuống và cài đặt Elevation PowerToys, là chạy cmd.exe với tư cách quản trị viên và sau đó gọi java.exe -jar 'installer.jar'từ dòng lệnh. Tất nhiên, tôi phải tìm java.exe trước, nhưng điều đó không mất nhiều thời gian ...


2
Thật ra bạn chỉ cần gọi installer.jar. Nó sẽ tự động định vị chương trình "mở bằng" mặc định đã được đặt thành java.exe. (Nếu không, nhấp đúp vào .jar sẽ không chạy nó ở vị trí đầu tiên.)
Pacerier
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.