Làm thế nào để đọc một tập tin .war?


17

Tôi đang cố gắng xem nội dung của tệp .war. Lần đầu tiên tôi đã thiết lập quyền của nó chmod 777sau đó khi tôi cố gắng sử dụng nó:

cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/

Đó là cho đi cd: /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/: Not a directoryvà tôi không thể tiến xa hơn.

Ai đó có thể giúp tôi trong vấn đề này?


5
Không sử dụng chmod 777trên một tệp nén. Bạn không cần bit thực thi để đọc nó. An toàn 644hoặc 640được khuyến khích.
Braiam

Xem các tài liệu Java chính thức: docs.oracle.com/javase/tutorial/deployment/jar/view.html
slm

/usr/local/standalone/deployments/Sample.warmột thư mục hoặc một tập tin?
jlliagre

Câu trả lời:


21

tập tin .war được đóng gói. Bạn có thể trích xuất thông tin bằng cách sử dụng một trong các lệnh sau:

jar -xvf Sample.war
unzip Sample.war

Sau đó bạn có thể chạy cd /usr/local/standalone/deployments/Sample.war/WEB-INF/classes/


3
jar -xvf *warsẽ không hoạt động nếu có nhiều hơn một tệp tin chiến tranh trong thư mục hiện tại. tar -xvfzHoàn toàn không hoạt động, bạn đang nhầm lẫn các tệp được nén và nén.
jlliagre

Đây là sự thật, tôi không có ý suy luận rằng nó sẽ hoạt động với nhiều cuộc chiến, chỉ là bạn có thể sử dụng nguyên văn lệnh đó cho bất kỳ cuộc chiến nào. Tôi đã thay đổi nó
JZeolla

1
Tôi nghĩ rằng nó tốt hơn để sử dụng jar -tvfvà không phải là jar -xvfcách đề xuất . Vì vậy, các tệp không được trích xuất (và làm ô nhiễm.) Mà chỉ được liệt kê.
Dror Cohen

8

.war tập tin được lưu trữ nén.

Bạn có thể liệt kê những gì họ chứa

jar tvf Sample.war

hoặc là

zipinfo Sample.war

Nếu bạn muốn xem nội dung của các tệp được lưu trữ trong kho lưu trữ, trước tiên bạn cần giải nén nó ở đâu đó:

mkdir /tmp/foo
cd /tmp/foo
unzip /usr/local/standalone/deployments/Sample.war
ls -l WEB-INF/classes/

4

Nếu bạn không muốn giải nén tập tin, bạn có thể sử dụng vim filename.warđể đọc nội dung của tập tin. Bạn có thể đọc thư mục con của tệp bằng cách chọn chúng và nhấn enter.


Để làm việc này, bạn cần unzipcài đặt gói .
Thaoden

1

Đầu tiên bạn phải giải nén tập tin chiến tranh jar xvf Sample.war. Sau đó, bạn có thể cd vào tập tin chiến tranh.


0

Bên cạnh việc giải nén chúng bằng jar hoặc giải nén, bạn cũng có thể sử dụng Midnight Commander (mc) và điều hướng đến các tệp này và nhấn Enter trên chúng như thể chúng là các thư mục.

Nếu điều này không hoạt động ngay lập tức, hương vị mc của bạn không được định cấu hình để biết hậu tố .war, nhưng bạn vẫn có thể sử dụng tính năng này bằng cách nhập cd Sample.war # uzip (mc cũ) hoặc cd Sample.war / uzip: // (mc trong Debian không ổn định) và nhấn Enter. Là một lợi ích bổ sung, nhấn Escape rồi Enter (trong một số thiết bị đầu cuối, cũng như Alt-Enter nhưng đây không phải là di động nên không phụ thuộc vào nó) chèn tên tệp hiện tại vào dòng lệnh, nhưng bạn cũng sẽ phải nhấn Backspace nó thêm một khoảng trắng và #uzip hoặc / uzip: // cần ngay lập tức theo tên tệp.

Điều này được gọi là mc VFS (hệ thống tập tin ảo).

Tôi sẽ không lặp lại các câu trả lời giải nén / fastjar / jar ở đây, nhưng chúng cũng đúng.


0

Nếu các lệnh unix không hoạt động, ftp tệp vào máy cục bộ.

.jarhoặc .warhoặc.ear bất kỳ tập tin lưu trữ có thể được mở trong 7-Zip bằng cách làm theo các bước dưới đây -

  1. Nhấp chuột phải vào tệp lưu trữ
  2. 7-Zip
  3. Mở kho lưu trữ

Bạn sẽ có thể xem tất cả các nội dung tập tin lưu trữ. Bây giờ duyệt qua thư mục / tệp và sau đó nhấp chuột phải -> chỉnh sửa tệp -> lưu tệp.

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.