Java 프로젝트가 Vert.x인지 Wicket인지 구분하는 방법은 다음과 같은 특징과 파일 구조, 코드 패턴을 확인하는 것으로 정리할 수 있습니다.
Vert.x 프로젝트 특징
-
Vert.x는 이벤트 기반, 비동기식 통신에 최적화된 Polyglot 프레임워크로 JVM에서 동작합니다.
-
코드에서
Vertx vertx = Vertx.vertx();와 같은 방식으로 Vert.x 인스턴스를 생성하는 부분이 보입니다. -
Verticle(Vert.x의 실행 단위)을
vertx.deployVerticle()메서드로 배포하는 코드가 포함되어 있을 수 있습니다. -
주로 HTTP, TCP, UDP, WebSocket 등의 비동기 네트워크 처리를 위한 코드가 많고, 콜백이나 Future, Promise 패턴이 많이 보입니다.
-
Maven 또는 Gradle 의존성에
io.vertx그룹 ID가 포함되어 있고, Vert.x 관련 아티팩트가 있는지 확인합니다.
Wicket 프로젝트 특징
-
Wicket은 서버사이드 컴포넌트 기반 웹 프레임워크로, Java 클래스와 대응하는 HTML 마크업 파일이 쌍으로 존재합니다.
-
Java 소스코드 내에
extends WebPage,extends Panel등의 Wicket 컴포넌트 상속 코드가 보입니다. -
HTML 파일이
src/main/java또는src/main/resources내 Java 패키지 구조에 같이 존재하며, Wicket 컴포넌트에서 사용됩니다. -
Maven 의존성에
org.apache.wicket그룹 ID와 wicket-core 등의 아티팩트가 포함되어 있는지 확인합니다. -
코드에서 Wicket의 컴포넌트를 생성하고, 페이지 내 컴포넌트에
new Label("id", "value")같은 UI 선언 코드가 있습니다.
확인 방법 요약

| 구분 기준 | Vert.x | Wicket |
|---|---|---|
| 프레임워크 타입 | 이벤트 기반, 비동기 프로그래밍 | 서버사이드 컴포넌트 기반 웹 프레임워크 |
| 프로젝트 코드 예시 | Vertx.vertx(), vertx.deployVerticle() |
Java 클래스 extends WebPage, extends Panel |
| HTML 파일 위치 | 주로 없음 또는 별도로 관리 | Java 클래스와 동일 패키지 내에 HTML 파일 존재 |
| Maven 의존성 그룹 ID | io.vertx |
org.apache.wicket |
| 주요 라이브러리 | Vert.x 코어, Vert.x HTTP 서버 등 | wicket-core, wicket-util 등 |
| 비동기/동기 | 비동기, 이벤트 드리븐 | 동기, 서버 렌더링 중심 |
이렇게 프로젝트 소스 내 의존성, 코드 구조, HTML 파일 위치 및 프레임워크 인스턴스 생성 방식을 확인하면 Vert.x인지 Wicket인지 명확히 구분할 수 있습니다.