Cao Cấp Mục tiêu: Tạo một Maven dự án ứng dụng Web duy nhất có thể được sử dụng một cách chính xác trong cả hai Netbeans và EclipseEclipse có thể nhập dự án Web Maven dưới dạng "Ứng dụng web động" không?
Khi chuyển đổi một dự án Maven với Eclipse, loại dự án dường như không được thiết lập để Dynamic Web ứng dụng khi sử dụng lệnh: mvn eclipse: eclipse -Dwtpversion = 2,0
trong Eclipse, nếu tạo ra một ứng dụng Web động, nhiều lựa chọn hơn được hiển thị trong Project Explorer, chẳng hạn như: JAX-WS Web Services, Trình mô tả triển khai, v.v. Đó là cấu trúc khung hoàn toàn khác.
Ngoài ra, sau khi chuyển đổi với Eclipse với lệnh trên, tôi có thể không phải là "Run" nó mặc dù đầu ra từ việc chuyển đổi nói: [INFO] Sử dụng như máy chủ WTP: Apache Tomcat v7.0 . Thay vì muốn chạy như một dịch vụ web, nó hỏi tôi xem đây có phải là Java Servlet, Applet, hoặc Unit test hay không.
Với Dynamic Web App (Eclipse mẹ đẻ), đây là những gì xuất hiện khi chạy dự án:
Có lẽ tôi đang đòi hỏi quá nhiều của Eclipse, và để có được chức năng ứng dụng web tích hợp, nó không thể đến từ Maven?
Có một cách khác tôi có thể thử. Tôi có thể tạo một ứng dụng web động trong Eclipse, sau đó nhấn "Convert to Maven". Lấy POM đó, sửa đổi, sau đó xem nếu netbeans cũng sẽ tải nó.
'pom.xml' My:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.voxel</groupId>
<artifactId>servermap</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>userprofile</name>
<properties>
<endorsed.dir>${project.build.directory}/endorsed</endorsed.dir>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.8</version>
</dependency>
<dependency>
<groupId>com.sun.grizzly</groupId>
<artifactId>grizzly-servlet-webserver</artifactId>
<version>1.9.18-m</version>
</dependency>
</dependencies>
<repositories>
<repository>
<id>maven2-repository.dev.java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.java.net/maven/2</url>
</repository>
</repositories>
Điều này dường như về cơ bản những gì tôi đã bỏ lỡ. Khái niệm về các khía cạnh dự án. Tôi vẫn còn rất nhiều việc phải làm để tinh chỉnh điều này để làm việc trên Eclipse + Netbeans + IntelliJ, nhưng điều này khiến tôi vượt qua vấn đề chính mà tôi gặp phải :) – jsidlosky
Hmm ... Khi tôi nhập mô-đun Maven của mình, thì Project Facet này sẽ tự động được thiết lập cho tôi, vì vậy tôi không biết có gì khác biệt giữa tôi và @jsidlosky. – jhericks
Một bước bị thiếu: Sau khi thêm phần tử 'Dynamic Web Module', làm thế nào để yêu cầu Eclipse sử dụng' src/main/webapp' thay vì thư mục 'WebContent' thông thường của nó? –