Eclipse WTP so với sydeo, "phân phối các mô-đun mà không cần xuất bản"


103

Tôi gặp sự cố khi tìm hiệu suất của plugin sysdeo bằng cách sử dụng plugin tích hợp WTP của eclipse.

Để thực hiện việc di chuyển và do đó so sánh, tôi đã cài đặt cả hai trên các dự án riêng biệt trong eclipse.

Tôi nhận thấy sự khác biệt về năng suất, theo những gì tôi hiểu: WTP cần xuất bản các nguồn trong một bản dựng thư mục để tomcat sắp xếp chúng. "Xung" này dài: cần sạc lại bối cảnh để các sửa đổi có thể nhìn thấy được. (5 giây khô trong hầu hết yard 15 giây - lâu nhất là 20 giây).

Sysdeo không; nó nhắm mục tiêu của thư mục eclipse do đó xây dựng nội bộ trong dự án ngay khi một tệp được thực hiện sửa đổi, bản dựng eclipse và các sửa đổi này có sẵn ngay lập tức (F5 trên trình duyệt và chúng tôi có kết quả ngay lập tức).

Đây là cấu hình máy chủ của tôi:

Tùy chọn "Cung cấp các mô-đun mà không cần xuất bản" cho phép thực hiện chính xác những gì tạo nên sydeo: chọn thư mục xây dựng của dự án đang chạy. Cấu hình này thể hiện chính mình trong tệp ngữ cảnh. (Để có thể lấy lại nó, tôi đã kiểm tra "Xuất bản các ngữ cảnh điều chế thành các hàng XML serparate")

So sánh các tệp này:

  • Đây là tệp ngữ cảnh để tạo bởi sysdeo
< Context path="/tatoile _syseo" reloadable="false" docBase="D:\32bit\serveur32bit\workspace\tatoile _syseo" workDir="D:\32bit\serveur32bit\workspace\tatoile _syseo\work" />
  • Ngữ cảnh tệp để tạo bằng WTP

<? xml version = "1.0" encoding = "UTF-8"?> <Context docBase = "D: \ 32bit \ serveur32bit \ workspace \ tatoile \ web" path = "/ tatoile" reloadable = "true" source = "org .eclipse.jst.jee.server: tatoile "> <Resources className =" org.eclipse.jst.server.tomcat.loader.WtpDirContext "extraResourcePaths =" / WEB-INF / class | D: \ 32bit \ serveur32bit \ workspace \ tatoile \ build \ class "virtualClasspath =" D: \ 32bit \ serveur32bit \ workspace \ tatoile \ build \ class "/> <Loader className =" org.eclipse.jst.server.tomcat.loader.WtpWebappLoader "useSystemClassLoaderAsParent =" false " virtualClasspath = "D: \ 32bit \ serveur32bit \ workspace \ tatoile \ build \ class" /> <JarScanner scanAllDirectories = "true" /> </ Context>

Sau đó phân tích hai tệp đó giống nhau.

Bây giờ chúng ta hãy quay trở lại vấn đề. Tôi sử dụng cùng một máy chủ, do đó cả hai tệp ngữ cảnh ở trên đều được xác định cho cái này. Kinh nghiệm: Tôi khởi chạy tomcat bằng plugin sysdeo, tải trong hai ngữ cảnh được thực hiện để cấu hình một cách WTP cái kia bằng sysdeo. Cả hai nhà chức trách đều phản ứng theo cùng một cách, các sửa đổi được thực hiện ngay lập tức trong tatoile _syseo và tatoile.

Mặt khác, tôi khởi chạy tomcat thông qua plugin WTP (máy chủ tab, v.v.) trong eclipse, các sửa đổi không được thực hiện ngay lập tức trong cả hai dự án tatoile _syseo và tatoile. Lưu ý: Tự động tải lại phải được đặt trong Đã bật để các sửa đổi được tính đến. (Khi máy chủ cho chúng tôi biết rằng nó đã tải lại ngữ cảnh, chúng tôi có thể thấy các sửa đổi.)

nhập mô tả hình ảnh ở đây

Tôi loại trừ rằng cấu hình của ngữ cảnh không phải là lý do, mà là cách plugin khởi chạy tomcat; và ở đó hoặc tôi khô…

Đây là dự án WTP:

nhập mô tả hình ảnh ở đây


5
Bạn gặp sự cố trên Sysdeo hoặc WTP? OTOH Chắc chắn WTP sẽ cần thêm thời gian để thay đổi vì đây là những gì nó sẽ làm để tái xuất bản: (1) xây dựng các lớp (2) hủy triển khai ứng dụng web cũ (3) sao chép kết quả xây dựng vào thư mục triển khai của tomcat (4) tomcat sẽ tự động khởi động ứng dụng. Trong khi đó với sysdeo, các lớp trong RAM được sửa đổi nhanh chóng ngay khi có các thay đổi được thực hiện (được xác định bằng ngày mới trong bất kỳ tệp lớp nào). Sau đó, có một số hạn chế của các thay đổi mà không thể thực hiện nhanh chóng (khi bạn thêm các phương thức mới, cấu trúc lớp cũng thay đổi), trong trường hợp này, nó sẽ đưa ra một cảnh báo.

Tôi đã sử dụng cả Sysdeo và WTP trên cùng một dự án. Sự khác biệt đáng kể nhất mà tôi nhận thấy là, cấu hình của Sysdeo có vẻ dễ dàng hơn đối với tôi, nhưng điều này có thể bị sai lệch.
Markus

2
Vấn đề đã được giải quyết bằng cách thêm MAVEN với triển khai WTP. Không có vấn đề về hiệu suất. Không có vấn đề về hiệu suất và tôi không kích hoạt "phân phối mô-đun mà không xuất bản"
Vsplit

1
Nếu bạn giải quyết được vấn đề, bạn có thể đăng một câu trả lời?
Anubian Noob

@AnubianNoob vâng khi tôi đã giải thích trong bài đăng tiền lệ của mình. Tôi đã giải quyết vấn đề bằng cách sử dụng cấu hình maven.
Vsplit

Câu trả lời:


3

Câu trả lời được trích dẫn từ @Vsplit

Vấn đề đã được giải quyết bằng cách thêm MAVEN với triển khai WTP. Không có vấn đề về hiệu suất ... và tôi không kích hoạt các mô-đun phân phát mà không xuất bản


-1 Đây không phải là câu trả lời. vui lòng thêm câu trả lời với nhiều chi tiết hơn.
Isaac G Sivaa

1
Xin chào, tôi rất tiếc vì câu trả lời muộn của tôi. Nhưng như bạn phải lưu ý, tôi không thể giải quyết vấn đề liên quan đến plugin Sysdeo của Issus. Nhưng tôi đang sử dụng plugin Maven với WTP de triển khai. Bạn có thể xem hướng dẫn mẫu này youtube.com/watch?v=YeC7XQho-O0
Vsplit

2

tìm kiếm plugin miễn phí có tên m2e-wtp trên thị trường plugin. Điều đó sẽ xử lý các vấn đề phạm vi được cung cấp. Đối với các lớp không được triển khai, những nơi tôi thường xem xét là lắp ráp triển khai và / hoặc Đường dẫn xây dựng Java. Đảm bảo rằng các mục nhập (và các mô-đun phụ thuộc) đều ở đó và được đặt ở đúng vị trí.

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.