2013-11-04 29 views
9

Tôi muốn thêm một số thư viện sẽ được tải trước WebApp của tôi, giống như thêm Jar vào CATALINA_HOME\lib. Làm thế nào tôi có thể làm điều đó?IntelliJ IDEA thêm thư viện vào Tomcat

tương đương trong Eclipse:

Servers-> Tomcat v6.0-> Open Launch Configuration> Classpath-> Người dùng Entries

Vấn đề tôi tryint để giải quyết là Tôi cần bao gồm một thư viện chứa javax.servlet.Servlet và không thể tải một thư viện nếu không có trong đường dẫn lớp hệ thống Tomcat. Nhật ký lỗi:

THÔNG TIN: validateJarFile ([...] \ WEB-INF \ lib [...]. Jar) - bình chưa được tải. Xem Servlet Spec 2.3, phần 9.7.2. lớp vi phạm: javax/servlet/Servlet.class

Trả lời

11

Bạn có thể làm điều đó bằng cách vào cấu hình Run/Debug của bạn, hãy để một trong tomcat cấu hình appication web của bạn, bên cạnh các máy chủ ứng dụng combobox nhấp chuột vào cấu hình.
Trong cửa sổ bật lên Máy chủ ứng dụng, bạn có danh sách các thư viện, nhấp vào nút + để thêm Jar mà bạn chọn.

enter image description here

+0

Tôi cần phải thêm lớp này vào đường dẫn hệ thống Tomcat (hoặc nó được đặt tên là classpath chung) để không gặp lỗi "Jar chưa tải". Tôi đã cập nhật câu hỏi của mình. –

1

Thật không may, điều này dường như không làm việc trong IDEA 13 tuổi sử dụng Tomcat 7.

+0

bạn phải nhấp chuột phải vào gói servlet trong trình soạn thảo và sau đó bạn có thể thêm lib, Intelli J sẽ tải xuống. – Timo

3

Bạn có thể làm điều đó bằng cách chọn một thư mục cơ sở Tomcat khác nhau khi bạn cấu hình máy chủ Tomcat của bạn.

Chỉ cần tạo một thư mục riêng biệt (tomcatBase) và sao chép bên trong thư mục conf từ cài đặt Tomcat; cũng tạo một thư mục lib và sao chép ở đó các thư viện mà bạn muốn đưa vào. Cấu trúc cuối cùng sẽ trông như thế này:

-TomcatBase 
    |-conf 
    |-catalina.policy 
    |- ... 
    |-web.xml 
    |-lib 
    |-myJar.jar 
    |-myJar2.jar 

Tomcat configuration screen

Sử dụng một thư mục cơ sở khác nhau cũng sẽ cho phép bạn sử dụng các cài đặt tomcat cùng với cấu hình khác nhau và các thư viện khác nhau.

Bạn cũng có thể tải thư mục đó lên hệ thống kiểm soát phiên bản của mình, vì vậy mọi thay đổi trên thư viện máy chủ đều có thể được tất cả người dùng chia sẻ.

Hy vọng điều này sẽ giúp

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